position属性
position属性指定用于元素的定位方法的类型(静态,相对,固定,绝对或粘性)。 有五种不同的值:
•static
•relative
•fixed
•absolute
•sticky
然后使用top,bottom,left和right属性定位元素。但是,除非首先设置position属性,否则这些属性将不起作用。根据位置值,它们的工作方式也不同。
position:static;
默认情况下,HTML元素定位为静态。静态定位元素不受top,bottom,left和right属性的影响。 元素position:static;没有以任何特殊方式定位; 它总是根据页面的正常流程定位:
(推荐教程:CSS入门教程)
这个<div>元素的position:static;
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>css</title> <style> div.static { position: static; border: 3px solid #73AD21; } </style> </head> <body> <h2>position: static;</h2> <p>一个位置为position:static; 没有任何特殊的定位; 它是始终根据页面的正常流程定位:</p> <div class="static"> 这个div元素的位置为:static; </div> </body> </html>
position:relative;
具有position:relative;相对于其正常位置定位的元素。设置相对定位元素的top,bottom,left和right属性将使其远离其正常位置进行调整。其他内容不会被调整以适应元素留下的任何空白。
这个<div>元素的position:relative;
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>css</title> <style> div.relative { position: relative; left: 30px; border: 3px solid #73AD21; } </style> </head> <body> <h2>position: relative;</h2> <p>position:relative的元素; 相对于其正常位置定位:</p> <div class="relative"> 这个div元素有position: relative; </div> </body> </html>
position:fixed;
元素position:fixed;相对于视口定位,这意味着即使页面滚动,它也始终保持在同一位置。top,bottom,left和right属性用于定位元素。固定元素不会在页面中留下通常位于其中的间隙。注意页面右下角的固定元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>css教程(jc2182.com)</title> <style> div.fixed { position: fixed; bottom: 0; right: 0; width: 300px; border: 3px solid #73AD21; } </style> </head> <body> <h2>position:fixed;</h2> <p>position:fixed; 相对于视口定位,这意味着即使页面滚动,它也始终保持在同一位置:</p> <div class="fixed"> 这个div元素有position: fixed; </div> </body> </html>
position:absolute;
具有position:absolute;相对于最近定位的祖先定位的元素(而不是相对于视口定位,如fixed)。然而; 如果绝对定位元素没有定位祖先,它将使用文档正文,并随页面滚动一起移动。 注意: “定位”元素的位置是除了static之外的任何元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>css教程(jc2182.com)</title> <style> div.relative { position: relative; width: 400px; height: 200px; border: 3px solid #73AD21; } div.absolute { position: absolute; top: 80px; right: 0; width: 200px; height: 100px; border: 3px solid #73AD21; } </style> </head> <body> <h2>position: absolute;</h2> <p>position:absolute;的元素; 相对于最近定位的祖先定位(而不是相对于视口定位,如fixed):</p> <div class="relative">这个div元素有 position: relative; <div class="absolute">这个div元素有 position: absolute;</div> </div> </body> </html>
position:sticky;
position:sticky;根据用户的滚动位置定位元素。粘性元素在relative和之间切换fixed,具体取决于滚动位置。它被相对定位,直到在视口中满足给定的偏移位置 - 然后它“粘住”到位(如位置:fixed)。
注意: Internet Explorer,Edge 15及更早版本不支持粘性定位。Safari需要-webkit-前缀(参见下面的示例)。您还必须指定的至少一个top,right,bottom或left为粘稠的定位工作。
在此示例中,top: 0当您到达其滚动位置时,粘性元素会粘到页面顶部。
<!DOCTYPE html> <html> <head> <style> div.sticky { position: -webkit-sticky; position: sticky; top: 0; padding: 5px; background-color: #cae8ca; border: 2px solid #4CAF50; } </style> </head> <body> <p>尝试在此框架内<b>滚动</b>以了解粘性定位的工作原理。</p> <p>注意:IE/Edge15及更早版本不支position: sticky;。</p> <div class="sticky">我很粘!</div> <div style="padding-bottom:2000px"> <p>在此示例中,当您到达其滚动位置时,粘性元素会粘到页面顶部(顶部:0)。</p> <p>向上滚动以消除粘性。</p> <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p> <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p> <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p> <p>Some text to enable scrolling.. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque et eum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandae nec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p> </div> </body> </html>
相关视频教程推荐:css视频教程
以上就是css中position属性有哪些用法的详细内容,更多请关注Work网其它相关文章!