CSS中position的详细讲解(代码示例)
本篇文章给大家分享的内容是关于CSS中position的详细讲解(代码示例),有需要的朋友可以参考一下,希望对你有所帮助。
CSS position属性功能多样且功能强大。它允许设置或改变元素的位置。它有4个可能的值:static (默认值)、relative、absolute、fixed。(推荐课程:css视频教程)
它通常与4个坐标属性一起使用:left、right、top、bottom
static
这是默认 position值:静态元素仅遵循自然流程。他们不受任何left,right,top或bottom值。
relative
当position设置为relative时,元素可以根据其当前位置移动。
<p>汉皇重色思倾国,御宇多年求不得。杨家有女初长成,养在深闺人未识。天生丽质难自弃,一朝选在君王侧。回眸一笑百媚生,六宫粉黛无颜色。春寒赐浴华清池,温泉水滑洗凝脂。侍儿扶起娇无力,始是新承恩泽时。</p> <p>云鬓花颜金步摇,芙蓉帐暖度春宵。春宵苦短日高起,从此君王不早朝。承欢侍宴无闲暇,春从春游夜专夜。后宫佳丽三千人,三千宠爱在一身。金屋妆成娇侍夜,玉楼宴罢醉和春。</p> <p>姊妹弟兄皆列土,可怜光彩生门户。遂令天下父母心,不重生男重生女。骊宫高处入青云,仙乐风飘处处闻。缓歌慢舞凝丝竹,尽日君王看不足。渔阳鼙鼓动地来,惊破霓裳羽衣曲。</p>
p{ border: 1px solid blue;}
效果如下:
让我们继续看下去:
<p>九重城阙烟尘生,千乘万骑西南行。翠华摇摇行复止,西出都门百余里。六军不发无奈何,宛转蛾眉马前死。花钿委地无人收,翠翘金雀玉搔头。君王掩面救不得,回看血泪相和流。黄埃散漫风萧索,云栈萦纡登剑阁。</p> <p class="second">峨嵋山下少人行,旌旗无光日色薄。蜀江水碧蜀山青,圣主朝朝暮暮情。行宫见月伤心色,夜雨闻铃肠断声。天旋地转回龙驭,到此踌躇不能去。马嵬坡下泥土中,不见玉颜空死处。</p> <p>君臣相顾尽沾衣,东望都门信马归。归来池苑皆依旧,太液芙蓉未央柳。芙蓉如面柳如眉,对此如何不泪垂。春风桃李花开日,秋雨梧桐叶落时。</p>
p{ border: 1px solid blue;} .second{ position: relative;border:1px solid red; left: 20px; top: 10px;}
效果如下:
红色边框从左侧移动20像素和从上方移动了10像素,相对于它的天然位置,在那里的应该是它正确的位置。
注意蓝色段落根本没有移动过。通过使用相对定位,红色段落可以自由移动而不会破坏布局。唯一不合适的就是除了它本身所有其他元素都不知道元素已移动。
absolute
当position设置为absolute时,元素可以根据第一个定位的元素移动。
“定位?什么是定位元素?“
定位元素是一个其position值是relative,absolute或fixed。所以,除非位置未设置或静态的,一个元素才被定位。
定位元素的特征是它可以作为其子元素的参考点。
让我们想象一个简单的层次结构:
<section> I'm in position relative. <p> I'm in position absolute! </p> </section>
section { background: gold; height: 200px; padding: 10px; position: relative; /* This turns the <section> into a point of reference for the <p> */ } p { background: limegreen; color: white; padding: 10px; position: absolute; /* This makes the <p> freely movable */ bottom: 10px; /* 10px from the bottom */ left: 20px; /* 20px from the left */ }
效果如下:
黄色部分的高度为200px,其位置设置为relative,将其转换为所有子元素的参考点。
当绿色段落的位置设置为时absolute,它可以根据黄色部分自由移动。通过设置bottom和left值,它将向左下角移动。
如果我们设置左和右会发生什么?
如果width没有设置,施加left: 0和right: 0将伸展在整个宽度的元件。它相当于设置left: 0和width: 100%。
如果width设置,则right丢弃该值。
fixed
当position设置为固定时,它的作用类似于绝对定位:您可以设置左/右和上/下坐标。
唯一的区别是参考点是视口。这意味着固定元素不会随页面滚动 ; 它固定在屏幕上。
以上就是CSS中position的详细讲解(代码示例)的详细内容,更多请关注其它相关文章!