最新消息: 关于Git&GitHub 版本控制你了解多少?
您现在的位置是:群英 > 开发技术 > web开发 >
css不同的定位方法分享
PHP中文网发表于 2021-05-19 17:13 次浏览

css进行定位的方法:首先使用position属性指定元素的定位类型(静态定位、绝对定位、相对定位或固定定位);然后使用left,top,right,bottom属性调整元素的位置即可。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

什么是定位:

css中的position属性,position有四个值:absolute/relative/fixed/static(绝对/相对/固定/静态(默认))通过定位属性可以设置一些不规则的布局,使用TLBR(top,left,bottom,right)来调整元素位置。

各个属性值的描述:

  • static(静态) 没有特别的设定,不脱离文档流,遵循基本的定位规定,不能通过z-index进行层次分级,在普通流中,各个元素默认的属性。
  • relative(相对定位) 对象不可层叠、不脱离文档流,参考自身静态位置通过 top,bottom,left,right 定位。
  • absolute(绝对定位) 脱离文档流,通过 top,bottom,left,right 定位。选取其最近一个最有定位设置的父级对象进行绝对定位,如果对象的父级没有设置定位属性,absolute元素将以body坐标原点进行定位。
  • fixed(固定定位)脱离文档流,这里所固定的参照对像是可视窗口而并非是body或是父级元素。使用了fixed的元素不会随着窗口的滚动而滚动。属于absolute的子集。

各个属性值的具体作用:

A.static:(静态,默认的属性)通常情况下都不会使用,但是会存在有些场景,就是你想把position的值从其他值修改成默认时使用。

B.relative:(相对定位)一个元素设定了position:relative,因为其不脱离文本流,如果不设置TLBR(top,left,bottom,right)的话,它的位置不会被改变,且不会影响当前布局,相当于没事发生一样。如果设置了TLBR后,元素就可以向指定的方向偏移,但是他原有的位置还是占据着的,例子如图:

图一:对child-1 设置了position:relative

图二:再对child-1 调位置 top:20px left:20px

C.absolute: (绝对定位),完全脱离文本流(普通流),原来的位置不再占有,且可以设置TLBR任意移动;

特别说明一下,对元素设置了absolute后,其父级元素都没有设置position:absolute/relative/fixed其会以body为父级。

图一:

图二:

图三:

D.fixed:(固定定位),不会随着页面滚动而滚动,这里就不贴图了,最形象的就是那些网页小广告,你滚动页面,但是它一直在网页的右边或左边,死跟着你。

定位布局技巧:position:relative 与 position:absolute 结合使用:

上面提到如果对元素设置了absolute后,其父级元素都没有设置position:relative,其会以body为父级。这样的话我们该元素定位到我们的目标位置将很困难,量像素麻烦。图片说明:

图一:初始状态

图二:对box-chd-chd设置position:absolute 并设置 top:0, left:0 可以看到它从body作为父级,会以最左上角作为起点

图三:对box 设置position:relative,可以看到此时box-chd-chd以box作为父级

图四:再对box-chd 设置position:relative,可以看到box-chd-chd以box-chd作为父级

可以看出,当子代设置了position:absolute后,其父级那个设置了position:relative,这个子代就会从该父级元素最左上方作为起点移动,并且遵循就近原则,即子代向上找父级,当找到第一个有父级设置了relative就以它最左上方作为起点。

relative 与 absolute 结合的方式,对定位布局起到了便利,需要移动的距离也得到缩小,不用从body开始整个页面来量取像素,同时也方便管理,结构清晰。

(学习视频分享:css视频教程)

以上就是css怎么进行定位的详细内容,更多请关注群英网络其它相关文章!

标签:CSS定位
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
相关信息推荐
2021-09-30 16:57:33 关键词:css样式的写法
摘要:css中样式的写法是什么?对一些新手来说,可能不是很了解css中样式的写法,因此本文就给大家来介绍一下CSS的内联样式、内部样式和外部样式的常见写法,有需要的朋友可以参考。..
2021-09-30 16:57:19 关键词:css3阴影效果
摘要:css3如何实现阴影效果?在CSS3中,我们想要实现阴影效果,可以使用box-shadow属性。box-shadow属性的使用也很简单的,但是有些值和问题是需要了解清楚的,下面我们就来详细的了解box-sh..
2021-09-30 16:57:18 关键词:css增加边框
摘要:css如何增加边框?有时候我们需要给元素添加边框的效果,在CSS中,添加边框,我们可以使用border属性,接下来小编就给大家介绍一下border属性的使用、值的介绍和使用要注意的问题,..
2021-09-30 16:57:06 关键词:css对话框
摘要:用css怎么样做一个简单的对话框?对于对话框,大家应该都不陌生,最简单的对话框就是侧面带有一个小三角形的矩形,而实现这样的效果其实并不困难,下面我们就用纯CSS写一个简单..
2021-09-29 19:15:17 关键词:css设置分辨率
摘要:这篇文章主要给大家介绍css设置分辨率的内容,在实际的项目中,因为不同的屏幕尺寸要求的分辨率不同,因此为了不同满足用户需要,我们要设置不用分辨的样式。那么具体怎样做呢..