网络

教育改变生活

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4402|回复: 0
打印 上一主题 下一主题

CSS中级-3 CSS 布局-定位

[复制链接]

418

主题

419

帖子

1710

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1710
跳转到指定楼层
楼主
发表于 2023-11-23 16:16:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CSS 布局 - position 属性
position 属性规定应用于元素的定位方法的类型(static、relative、fixed、absolute 或 sticky)。
position属性
position 属性规定应用于元素的定位方法的类型。
有五个不同的位置值:
·        static
·        relative
·        fixed
·        absolute
·        sticky
元素其实是使用 top、bottom、left 和 right 属性定位的。但是,除非首先设置了 position 属性,否则这些属性将不起作用。根据不同的 position值,它们的工作方式也不同。
position:static;
HTML元素默认情况下的定位方式为 static(静态)。
静态定位的元素不受 top、bottom、left 和 right 属性的影响。
position:static; 的元素不会以任何特殊方式定位;它始终根据页面的正常流进行定位:
这个 <div> 元素设置了 position: static;
这是所用的 CSS:
实例div.static {  position: static;  border: 3px solid #73AD21;}
position:relative;
position: relative; 的元素相对于其正常位置进行定位。
设置相对定位的元素的 top、right、bottom 和 left 属性将导致其偏离其正常位置进行调整。不会对其余内容进行调整来适应元素留下的任何空间。
这个 <div> 元素设置了 position: relative;
这是所用的 CSS:
实例div.relative {  position: relative;  left: 30px;  border: 3px solid #73AD21;}
position:fixed;
position: fixed; 的元素是相对于视口定位的,这意味着即使滚动页面,它也始终位于同一位置。top、right、bottom 和 left 属性用于定位此元素。
固定定位的元素不会在页面中通常应放置的位置上留出空隙。
请注意页面右下角的这个固定元素。这是所用的 CSS:
实例div.fixed {  position: fixed;  bottom: 0;  right: 0;  width: 300px;  border: 3px solid #73AD21;}
这个 <div> 元素设置了 position: fixed;
position:absolute;
position: absolute; 的元素相对于最近的定位祖先元素进行定位(而不是相对于视口定位,如 fixed)。
然而,如果绝对定位的元素没有祖先,它将使用文档主体(body),并随页面滚动一起移动。
注意:“被定位的”元素是其位置除 static 以外的任何元素。
这是一个简单的例子:
这个 <div> 元素设置了 position: relative;
这个 <div> 元素设置了 position: absolute;
这是所用的 CSS:
实例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;}
position:sticky;
position: sticky; 的元素根据用户的滚动位置进行定位。
粘性元素根据滚动位置在相对(relative)和固定(fixed)之间切换。起先它会被相对定位,直到在视口中遇到给定的偏移位置为止 - 然后将其“粘贴”在适当的位置(比如 position:fixed)。
注意:InternetExplorer、Edge 15 以及更早的版本不支持粘性定位。 Safari 需要 -webkit- 前缀(请参见下面的实例)。您还必须至少指定 top、right、bottom 或 left 之一,以便粘性定位起作用。
在此例中,在到达其滚动位置时,sticky 元素将停留在页面顶部(top: 0)。
实例div.sticky {  position: -webkit-sticky; /* Safari */  position: sticky;  top: 0;  background-color: green;  border: 2px solid #4CAF50;}
重叠元素
在对元素进行定位时,它们可以与其他元素重叠。
z-index 属性指定元素的堆栈顺序(哪个元素应放置在其他元素的前面或后面)。
元素可以设置正或负的堆叠顺序:
这是一个标题
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
由于图像的 z-index 为 -1,所以它位于文本后面。
实例img {  position: absolute;  left: 0px;  top: 0px;  z-index: -1;}
具有较高堆叠顺序的元素始终位于具有较低堆叠顺序的元素之前。
注意:如果两个定位的元素重叠而未指定 z-index,则位于HTML 代码中最后的元素将显示在顶部。
定位图像中的文本
如何在图片上放置文字:
实例
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg
更多实例
本例演示如何设置元素的形状。元素被裁剪为这种形状并显示。
所有 CSS 定位属性
  
属性
  
描述
设置定位框的底部外边距边缘。
剪裁绝对定位的元素。
设置定位框的左侧外边距边缘。
规定元素的定位类型。
设置定位框的右侧外边距边缘。
设置定位框的顶部外边距边缘。
设置元素的堆叠顺序。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

WEB前端

QQ|手机版|小黑屋|金桨网|助学堂  咨询请联系站长。

GMT+8, 2024-12-23 03:49 , Processed in 0.033354 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表