CSS百分比定义高度的问题
类别:Web前端 浏览量:1719
时间:2015-4-26 CSS百分比定义高度的问题
CSS百分比定义高度的问题css中,百分比的高度在设定时需要根据这个元素的父元素容器的高度。所以,如果你把一个li的高度设定为height: 50%;,而它的父元素的高度是100px,那么,这个li的高度应该是50px。
Web浏览器在计算有效高度时,浏览器根本就不计算内容的高度,除非内容超出了视窗范围(导致滚动条出现)。或者你给整个页面设置一个绝对高度。否则,浏览器就会简单的让内容往下堆砌,页面的高度根本就无需考虑。
因为页面并没有缺省的高度值,所以,当你让一个元素的高度设定为百分比高度时,无法根据获取父元素的高度,也就无法计算自己的高度。换句话说,父元素的高度只是一个缺省值:height: auto;。当你要求浏览器根据这样一个缺省值来计算百分比高度时,只能得到undefined的结果。也就是一个null值,浏览器不会对这个值有任何的反应。
例如
<style type="text/css">
body {
margin: 0;
padding: 0;
border: 0;
background-color: #EFECE6;
}
#content {
width: 958px;
height: 100%;
border-left: solid 1px #c00;
border-right: solid 1px #c00;
background-color: #fff;
margin: 0 auto;
padding: 0 1em 0 1em;
font: 12px/1.5 Verdana;
}
#content h1 {
color: #3e3e3e;
font: 22px/1.2 Georgia;
margin: 0;
padding: 0;
}
#content h2 {
color: #4d4a42;
font: 14px/1.3 Verdana;
margin: 0;
padding: 0;
}
</style>
<body>
<li id="content">
<h1>Height 100%—Not Working</h1>
<h2>Example</h2>
<p id="by">
</p>
<p>
The CSS <code>height</code> property can be frustrating to use, because, especially if you are setting heights as a percentage of the browser window, they don't always work.
</p>
<p>
For example, this page you are on currently has a height set to this main content <code>li</code> of 100%, but as you can see, it is not filling up the entire page. Instead it is filling up only the amount of space that this text takes up.
</p>
<p>
learn how to get your elements to fill up the full height of a browser window.
</p>
</li>
</body>
上面的例子是父元素没有设定固定高度,于是子元素的高度height: 100% 也不会起作用。
标签:css
您可能感兴趣
- css3渐变动画(CSS3径向渐变radial-gradient实现波浪边框和内倒角的方法)
- css实现动画的方法(CSS实现悬停过渡动画三部曲)
- css中width:auto和width:100%的区别
- css3动画实现loading(CSS3实现粒子旋转伸缩加载动画)
- css3旋转动画教学(css3动画效果抖动解决方法)
- 视图平滑动画(菜单栏 “三” 变形为“X”css3过渡动画)
- css语言代码大全(分享20条编写 CSS 代码的建议)
- css 模块阴影(CSS 曲线阴影实现的示例代码)
- css3怎么改成3d(灵活运用CSS3特性绘制简易版围棋效果)
- css3背景渐变动画效果(css3制作的背景渐变动画效果)
- css弹出框特效(利用CSS实现酷炫的下拉框特效)
- css控制滚动条的样式
- css行框高度与lineheight(CSS中height和min-height的区别)
- css3实现120度的箭头(使用css实现任意大小、任意方向和任意角度的箭头示例)
- CSS中常用的几个技巧
- html怎么去除css边框(Html/CSS前端实现文字边框阴影效果)
- 为什么现在年轻人越来越喜欢买衣服(为什么现在年轻人越来越喜欢买衣服穿)
- 怎么做好SEO(怎么做好seo内容优化)
- 冬季钓鱼子线用 长 还是 短(冬季钓鱼子线用)
- 鱼竿 夏钓短,冬钓长 ,一定是这样 认清优缺点在选竿(鱼竿夏钓短冬钓长)
- 鲢鳙钓底还是钓浮 流水的水域应怎样做钓(鲢鳙钓底还是钓浮)
- 入秋后的第二场苹果发布会来了 全新M1系列芯片登场(入秋后的第二场苹果发布会来了)
热门推荐
- laravel 权限管理(修改Laravel自带的认证系统的User类的命名空间的步骤)
- element中表单验证规则(element多个表单校验的实现)
- css3导航条推荐(使用CSS3制作倾斜导航条和毛玻璃效果)
- 宝塔主机怎样设置404页面(宝塔面板自定义404错误页面的设置方法)
- 阿里云对象存储oss收费吗(阿里云存储服务OSS基本概念)
- js和css哪个重要(js与css的阻塞问题详析)
- pandas删除存在空值的列(详解pandas.DataFrame中删除包涵特定字符串所在的行)
- docker清理占用空间(docker清理大杀器/docker的overlay文件占用磁盘太大的解决)
- linux常见命令vmstat(Linux stat命令的使用)
- dedecms5.7使用教程(dedecms v5.7提示php.ini register_globals must is Off错误的解决方法)