本文将为您提供关于css–在几个DIV之间分配父元素中的剩余空间的任何可靠的跨浏览器方式?的详细介绍,同时,我们还将为您提供关于android–如何填充两个布局之间的剩余空间、cssdiv高度填满父容
本文将为您提供关于css – 在几个DIV之间分配父元素中的剩余空间的任何可靠的跨浏览器方式?的详细介绍,同时,我们还将为您提供关于android – 如何填充两个布局之间的剩余空间、css div高度填满父容器剩余空间、CSS DIV高度撑满剩余空间、css – 两个div之间的备用行颜色的实用信息。
本文目录一览:- css – 在几个DIV之间分配父元素中的剩余空间的任何可靠的跨浏览器方式?
- android – 如何填充两个布局之间的剩余空间
- css div高度填满父容器剩余空间
- CSS DIV高度撑满剩余空间
- css – 两个div之间的备用行颜色
css – 在几个DIV之间分配父元素中的剩余空间的任何可靠的跨浏览器方式?
我正在开发一个基于浏览器的UI,需要在没有任何滚动的情况下填满整个屏幕.基本布局是这样的:
我想要实现的目标
标题div应具有固定高度(2em),其余4个div / panel应根据我设置的百分比分配屏幕的剩余空间.
我试过的
我发现的最佳解决方案是“CSS – How to force elements to 100% of remaining/available space of parent element without extending beyond it?”,它涉及使用位置为绝对的容器div.这适用于所有浏览器,但需要创建一些额外的DIV.此外,由于inaccuracies in percentage widths,有时可以强制面板2在下一行开始.
我之前的解决方案基于CSS3 Flexbox,但该模型存在缺陷,因为在拉伸容器盒之后它不会调整具有百分比高度的子元素(至少Chrome不会). (较新的flex- *属性仅在Chrome中实现,标准仍在变化.)
我也尝试了calc()功能;但是,它还没有在Chrome中实现.此外,它需要在两个地方硬编码标题元素的高度,我一直试图避免.
编辑:
我在找什么
为了清楚起见,我不是要求一个完美的/纯CSS解决方案(因为似乎没有).如果有人可以建议任何可以做到这一点的jQuery插件或开源框架,那对我来说就足够了.
此外,我不要求在2012年之前向浏览器版本提供任何向后兼容性.(只要解决方案使用的技术在某些浏览器中实现,并且将在不久的将来由Firefox和Chrome实现,它就足够了我.)
解决方法
http://jsfiddle.net/gDTGn/2/
android – 如何填充两个布局之间的剩余空间
在我的xml文件中,我有两个相对布局.一个通过android附加到顶部:layout_alignParentTop =“true”.
另一个由android附加到底部:layout_alignParentBottom =“true”.
现在这两个视图之间有很大的空间.我想两个用FrameLayout填充剩下的空间,其中应该显示几个不同的片段.
有人知道如何填补我描述的空间吗?
非常感谢!
解决方法
<FrameLayout android:layout_below="@+id/toplayout" android:layout_above="@+id/bottomlayout"/>
css div高度填满父容器剩余空间
总结
以上是小编为你收集整理的css div高度填满父容器剩余空间全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
CSS DIV高度撑满剩余空间
页面高度为百分百情况下,内容div实现自动撑满剩下的位置
- 头部区域高度为110rpx,内容区域div实现自动撑满剩下的位置。
如果将div 高度设置为100%,会造成多出头部的110rpx,会有滚动条显示!
.content{
width: 100%;
height: 100%;
box-sizing: border-box;
position: relative;
.search_box{
position: relative;
box-sizing: border-box;
width: 100%;
height: 110rpx;
border: 1px solid red;
}
.list{
width: 100%;
height: 100%;
box-sizing: border-box;
border: 1px solid green;
}
}
此时我们不需要滚动条
- 方法一、绝对定位,将list css修改为。
.list{
width: 100%;
box-sizing: border-box;
border: 1px solid green;
position: absolute;
top: 110rpx;//头部高度
left: 0;
bottom: 0;
}
- 此时已经实现无滚动条效果
- 方法二、利用 padding-top 和 margin-top ,将 margin-top 设置为负值。
.content{
width: 100%;
height: 100%;
padding-top: 110rpx;
box-sizing: border-box;
position: relative;
.search_box{
position: relative;
box-sizing: border-box;
margin-top: -110rpx;
width: 100%;
height: 110rpx;
border: 1px solid red;
}
.list{
width: 100%;
box-sizing: border-box;
border: 1px solid green;
height: 100%;
}
}
- 同样达到效果
css – 两个div之间的备用行颜色
我有类似于以下HTML:
<div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div>
是否可以交替行类的背景颜色?总是以相同的颜色开始?我一直无法使用nth-child实现这一点,我假设它是因为组/子组类.
可以返回的示例数据集的jsfiddle中的手动html标记以及如何设计样式:
http://jsfiddle.net/Qr5Za/
解决方法
‘always starting with the same color’ means that the first row after
group/subgroup starts with red
如果是这样,您可以通过以下方式设置第一个.row红色和其他洋红色的背景颜色:
.group ~ .row { /* select all rows comes after each group */ background-color: magenta; } .group + .row { /* select and override the first row after each group */ background-color: red; }
JSBin Demo
这些选择器被称为General sibling combinator~和Adjacent sibling combinator,你可以找到more details here.
更新
所有新的CSS3选择器(如:nth-child(n)
,:nth-of-type(n)
)都匹配其父元素的第n个子元素或类型的每个元素.
因此,实现this的唯一方法是将.rows放入每个块的包装器中:
<div>This is a group</div> <div>This is a subgroup</div> <div> <div>This is the first row</div> <div>This is the second row</div> <div>This is the third row</div> <div>This is the forth row</div> </div>
并根据它们在.wraper(他们的父级)中的位置选择奇数和偶数行:
.row:nth-child(odd) { background-color: red; } .row:nth-child(even) { background-color: magenta; }
JSBin Demo #2
我们今天的关于css – 在几个DIV之间分配父元素中的剩余空间的任何可靠的跨浏览器方式?的分享就到这里,谢谢您的阅读,如果想了解更多关于android – 如何填充两个布局之间的剩余空间、css div高度填满父容器剩余空间、CSS DIV高度撑满剩余空间、css – 两个div之间的备用行颜色的相关信息,可以在本站进行搜索。
本文标签: