(css)定位、锚点、透明

position 定位属性,检索对象的定位方式;

一、语法:

position:static(initial) /absolute/relative/fixed/sticky(粘性定位),unset相当于static
取值:
1、static:默认值,无特殊定位,对象遵循HTML原则, 会忽略left、top、right、bottom和z-index属性;
2、relative :相对定位,是相对于默认位置的偏移定位,通过设置left、top、right、bottom 值可将其移至相对所需位置(元素设置相对于原本位置的定位,元素并不脱离文档流,因此元素原本的位置会被保留,其他的元素位置不会受到影响)
3、absolute:相对于父级元素的绝对定位脱离文档流,不占据空间,其位置是相对于最近的定位父元素进行定位,若父级都没有定位,则以html,浏览器的位置为相对位置。可设置“left”、“top”、“right” 以及 “bottom” 属性。
4、fixed:固定相对浏览器的绝对定位,位置通过 “left”、“top”、“right” 以及"bottom" 属性来规定。不论窗口滚动与否,元素都会留在那个位置。(IE6浏览器不支持此定位)
5、sticky:粘性定位不脱离文档流,仍然保留元素原本在文档流中的位置。是css3定位新增属性;是相对定位relative和固定定位fixed的结合;它主要用在对scroll事件的监听
当元素在容器中被滚动超过指定的偏移值时,元素在容器内固定在指定位置。
兼容性不好
例如
.sticky {position: sticky; top: 0px; padding: 5px; background-color: #cae8ca}

<div class="sticky">我是粘性定位!</div>
	<div style="padding-bottom:2000px">
 	<p>滚动我</p>
</div>

sticky使用条件:
1、父元素不能 overflow:hidden或者overflow:auto 属性。
2、必须指定top、bottom、left、right4个值之一,否则只会处于相对定位
3、sticky元素仅在其父元素内生效

二、绝对定位和相对定位的区别

1、参照物不同,绝对定位的参照物是包含块(父级),相对定位的参照物是元素本身位置;
2、绝对定位将对象从文档流中拖离出来因此不占据空间,相对定位不破坏正常的文档流顺序无论是否进行移动,元素仍然占据原来的空间。

三、包含块的概念及作用

包含块是绝对定位的基础,包含块就是为决定定位元素提供坐标,偏移和显示范围的参照物,即确定绝对定位的偏移起点和百分比 长度的参考;

默认状态下,html是一个大的包含块,所有绝对定位的元素都是根据根元素来定自己所处的位置和百分比大小的显示的,如果我们定义了包含元素为包含块以后,对于被包含的绝对定位元素来说,就会根据最接近的具有定位功能的上级包含元素来定位自己的显示位置。父级相对,子级绝对;

定义元素为包含块:给绝对定位元素的父元素添加声明position:relative;
如果我们的父素设置了position:absolute;那么子元素也会相对父元素来定义自己的位置。

四、定位元素层叠属性:

z-index : auto | number 检索或设置对象的层叠顺序。
auto:默认值。遵从其父对象
number:无单位的整数值。可为负数
说明:
没有设置z-index时最后写的对象优先显示在上层设置后,数值越大,层越靠上;如两个绝对定位对象的此属性具有同样的 number 值,那么将依据它们在HTML文档中声明的顺序层叠。
此属性仅仅作用于 position 属性值为 relative 或 absolute,fixed 的对象。

五、透明属性

IE10以下浏览器写法:
filter:alpha(opacity=value);取值范围 1-100
IE9两种都支持,但是优先显示上面的方法;
兼容其他浏览器写法:
opacity: .value(0.2) (value的取值范围0-1,0.1,0.2,0.3-----0.9)
例如:opacity: .8 ; filter:alpha(opacity=80);

Background:rgba(255,255,255,0.5)仅仅只是透明背景颜色,不透明文字

六、命名锚点链接的应用

定义:是网页制作中超级链接的一种,又叫命名锚记。命名锚记像一个迅速定位器一样是一种页面内的超级链接,运用相当普遍。

命名锚点链接的应用:
命名锚点的作用:在同一页面内的不同位置进行跳转。

制作锚标记:

  1. 给元素定义命名锚记名
    语法:<标记 id="命名锚记名称"> </标记>
  2. 连接命名锚记
    语法:<a href="#命名锚记名称"></a>
发布了38 篇原创文章 · 获赞 0 · 访问量 922

猜你喜欢

转载自blog.csdn.net/ZywOo_/article/details/104620620
今日推荐