Home > Article > Web Front-end > css 中position定位_html/css_WEB-ITnose
css html
请看第一个代码<html><head><style type="text/css">h2.pos_left{position:relative;left:-20px}h2.pos_right{position:relative;left:20px}</style></head><body><h2>这是位于正常位置的标题</h2><h2 class="pos_left">这个标题相对于其正常位置向左移动</h2><h2 class="pos_right">这个标题相对于其正常位置向右移动</h2><p>相对定位会按照元素的原始位置对该元素进行移动。</p><p>样式 "left:-20px" 从元素的原始左侧位置减去 20 像素。</p><p>样式 "left:20px" 向元素的原始左侧位置增加 20 像素。</p></body></html>效果图:
<html><head><style type="text/css">h2.pos_left{position:fixed;left:-20px}h2.pos_right{position:relative;left:20px}</style></head><body><h2>这是位于正常位置的标题</h2><h2 class="pos_left">这个标题相对于其正常位置向左移动</h2><h2 class="pos_right">这个标题相对于其正常位置向右移动</h2><p>相对定位会按照元素的原始位置对该元素进行移动。</p><p>样式 "left:-20px" 从元素的原始左侧位置减去 20 像素。</p><p>样式 "left:20px" 向元素的原始左侧位置增加 20 像素。</p></body></html>效果图就变成了
h2.pos_left{position:fixed;left:-20px}
fixed 的包含块是视窗,不属于文档的流。
XML/HTML code?12345h2.pos_left{position:fixed;left:-20px}
这个是固定定位 ,属于绝对定位的一种,被固定定位的元素已经脱离了原来的文档流。固定定位 是相对于视窗窗口 定位的,所以 不管浏览器如何滚动,他都在相同位置
那为什么在正常位置下的两句话位置反过来了
fixed 的包含块是视窗,不属于文档的流。
在“这是位于正常位置的标题”下面两句话的位置倒过来了。
引用 2 楼 eazyc 的回复:fixed 的包含块是视窗,不属于文档的流。
在“这是位于正常位置的标题”下面两句话的位置倒过来了。
你 把浏览器 窗口 调小 ,出现滚动条 ,就会体会到 固定定位 是什么意思了
引用 4 楼 liulinisgood 的回复:引用 2 楼 eazyc 的回复:fixed 的包含块是视窗,不属于文档的流。
在“这是位于正常位置的标题”下面两句话的位置倒过来了。
你 把浏览器 窗口 调小 ,出现滚动条 ,就会体会到 固定定位 是什么意思了
嗯,试了一下,的确fixed是不会改变位置的,relative会随滚动条上下而动。
在浏览器最大化时候在两幅图中的两句话位置颠倒是不是因为relative需要和标准的相对位置固定,所以就在css 中fixed的段落之上了,理解是否有误(就是第二幅中的黑体三句话的顺序)
position: fixed;
楼主看下
http://www.w3school.com.cn/css/pr_class_position.asp
生成绝对定位的元素,相对于浏览器窗口进行定位。
另外建议楼主 写css加上 nbsp;HTML>
ie低版本不支持fixed,需要另作处理