纯CSS定位的固定垂直居中浮动层代码,附经典解说:《详解定位与定位应用》
2009-06-29 22:21
232 查看
该文章由本人原创,如若转载,请说明出处:http://blog.csdn.net/xxd851116/archive/2009/06/29/4308161.aspx
关于在html中浮动层是众多网页爱好者刚开始的难点,主要在于定位。如果你对CSS定位还不够了解,请先阅读此处:http://andymao.com/andy/post/70.html后再看本文章。
【需求】:
将一个网页分成头、身和脚三部分。如下:
————————————————————
头
————————————————————
身
————————————————————
脚
————————————————————
要求:1、头脚等高,并且头位于浏览器顶部,脚位于浏览器底部,身高可变化;
2、在身的左右分别放置两个垂直居中的div,类似浮动广告条,位置固定,不随滚动条的滚动和滚动;
【问题】:
1、如何固定层?
更详细请点击这里:http://andymao.com/andy/post/70.html(我认为讲的比较详细,和大家一起分享);
以下摘抄一部分文字如下:
由于广告的滥用,使得一些浏览器软件都开始有了广告内容拦截,使得一些很好的效果现在都不推荐使用了。比如让一个元素可能随着网页的滚动而不断改变自己在浏览器的位置。而现在我可以通过CSS中的一个定位属性来实现这样的一个效果,这个元素属性就是曾经不被支持的position:fixed; 他的含义就是:固定定位。这个固定与绝对定位很像,唯一不同的是绝对定位是被固定在网页中的某一个位置,而固定定位则是固定在浏览器的视框位置。
虽然原来的浏览器并不支持过个属性,但是浏览器的发展使得现在的高级浏览器都可以正确的解析这个CSS属性。并且通过CSS HACK来让IE6都可以实现这样的效果(目前无法使IE5.x)实现这种效果。
2、如何垂直居中?
这个问题其实就是DIV绝对定位是居中问题。其实so easy!以下是我的思路:只要将该固定定位的div的top设为50%,然后将上移到该层的高度的一半就行了(margin-top为负),例如,如果某div高度为200px,要使得该div垂直居中,只要设置"position:absolute;top:50%;margin-top:-100px",就是这么简单!
因此,水平居中也解决了,如果该层宽度为300px,那么"position:absolute;left:50%;margin-left:-100px"代码可以解决水平居中问题。
即水平又垂直,那就将两者结合起来喽!嘿嘿。。。
【测试源码下载】:点击下载完整测试代码(该用例代码为本人业余之作,如有不足,请指正。详细问题源码均有说明)
关于在html中浮动层是众多网页爱好者刚开始的难点,主要在于定位。如果你对CSS定位还不够了解,请先阅读此处:http://andymao.com/andy/post/70.html后再看本文章。
【需求】:
将一个网页分成头、身和脚三部分。如下:
————————————————————
头
————————————————————
身
————————————————————
脚
————————————————————
要求:1、头脚等高,并且头位于浏览器顶部,脚位于浏览器底部,身高可变化;
2、在身的左右分别放置两个垂直居中的div,类似浮动广告条,位置固定,不随滚动条的滚动和滚动;
【问题】:
1、如何固定层?
/* 全局浮动层固定默认样式设置,支持FF和IE */ .fixed {position:fixed;} * html div.fixed {position:absolute; right:16px;} /* [only for ie] "right=16px"是为了显示滚动条,即right最小值为16px */
更详细请点击这里:http://andymao.com/andy/post/70.html(我认为讲的比较详细,和大家一起分享);
以下摘抄一部分文字如下:
由于广告的滥用,使得一些浏览器软件都开始有了广告内容拦截,使得一些很好的效果现在都不推荐使用了。比如让一个元素可能随着网页的滚动而不断改变自己在浏览器的位置。而现在我可以通过CSS中的一个定位属性来实现这样的一个效果,这个元素属性就是曾经不被支持的position:fixed; 他的含义就是:固定定位。这个固定与绝对定位很像,唯一不同的是绝对定位是被固定在网页中的某一个位置,而固定定位则是固定在浏览器的视框位置。
虽然原来的浏览器并不支持过个属性,但是浏览器的发展使得现在的高级浏览器都可以正确的解析这个CSS属性。并且通过CSS HACK来让IE6都可以实现这样的效果(目前无法使IE5.x)实现这种效果。
2、如何垂直居中?
这个问题其实就是DIV绝对定位是居中问题。其实so easy!以下是我的思路:只要将该固定定位的div的top设为50%,然后将上移到该层的高度的一半就行了(margin-top为负),例如,如果某div高度为200px,要使得该div垂直居中,只要设置"position:absolute;top:50%;margin-top:-100px",就是这么简单!
因此,水平居中也解决了,如果该层宽度为300px,那么"position:absolute;left:50%;margin-left:-100px"代码可以解决水平居中问题。
即水平又垂直,那就将两者结合起来喽!嘿嘿。。。
【测试源码下载】:点击下载完整测试代码(该用例代码为本人业余之作,如有不足,请指正。详细问题源码均有说明)
相关文章推荐
- 纯CSS定位的固定垂直居中浮动层代码,附经典解说:《详解定位与定位应用》
- 纯CSS定位的固定垂直居中浮动层代码,附经典解说 《详解定位与定位应用》
- 纯CSS定位的固定浮动层代码 不闪 兼容IE6 8 火狐 谷歌等
- div浮动层,遮罩层屏幕居中(水平垂直居中)CSS代码
- CSS 解决未知高度垂直居中实现代码
- CSS垂直居中的6种方式,最快只用两行代码
- div固定高度中图片垂直居中显示
- CSS实战技巧:图片(大小不固定)的水平垂直居中
- DIV+CSS垂直居中一个浮动元素
- div的内容图片垂直居中代码(兼容多浏览器)
- css在盒子中垂直居中和固定居中
- div图片水平垂直居中不随滚动条滚动的CSS代码(兼容IE8+)
- div垂直居中的N种方法 单行/多行文字(未知高度/固定高度)
- div的内容图片垂直居中代码(兼容多浏览器)
- 类似table的固定容器高度的CSS垂直居中方法
- java POI操作Excel代码收藏 (包括标题垂直水平居中)
- 浮动的div自适应居中显示的js代码
- DIV未知高度的垂直居中代码
- 大小不固定的图片和多行文字的垂直水平居中
- 大小不固定的图片、多行文字的水平垂直居中