CSS position 笔记+实验

目录:

1.static

2.relative

3.absolute

4.fixed(待补充)

5.参考资料


1.static

元素都有position属性,其默认值是“static”,这也意味着,他们没有也不接受位置属性设置(top、right、bottom、left属性值设置)。另外元素设置了position属性,将会覆盖元素的默认值“static”。

static: 父元素-子元素高度关系

此例中,子元素 box-xx 设置height,父元素 box-set 不设置height。

父元素的高度由子元素高度撑起(子元素原始高度)

子元素 height: 40px;

子元素 height: 80px;


2.relative

“relative”可以给元素设置位移(offset)“top、right、bottom和left”属性。通过这些位移属性设置可以给元素进行精确的定位。

  • relative + 位移属性:
  1. 仍∈文档流;
  2. 仍占用原默认位置(周边元素也能看到其默认位置);
  3. 相对定位元素的位移是相对于元素自身的边缘

事实上,一个相对定位元素同时设置了“top”和“bottom”位移属性值,实际上“top”优先级高于“bottom”。然而,一个相对定位元素同时设置了“left”和“right”位移属性,他们的优先级取决于页面使用的是哪种语言,例如,如果你的页面是英文页面,那么“left”位移属性优先级高,如果你的页面是阿拉伯语,那么“right”的位移属性优先级高。

相对定位元素:父元素-子元素高度关系

此例中,子元素 box-xx 设置height,父元素 box-set 不设置height。

父元素的高度由子元素高度撑起(子元素原始高度,与位移无关)

子元素 height: 40px;

子元素 height: 80px;


3.absolute

  • 绝对定位元素
  1. 脱离文档流;
  2. 需要至少一个祖先元素设置了相对定位(绝对定位),否则会相对于页面主体进行定位。
  • 相对定位的祖先ancestor + 绝对定位元素elem:
  1. 若 elem 没有设置盒子位移属性,elem 的顶部、左部,会和设置了相对定位的父元素的顶边、左边重合。(多个elem会重叠)
  2. 若 elem 设置了盒子位移属性,elem 会对于设置了相抵定位的祖先元素边缘进行移位。

当一个绝对定位的元素有固定的高度和宽度,并且盒子位移同时设置了“top”和“bottom”时,“top”更具优先组,另外和相对定位元素一样,当同时设置了“left”和“right”时,优先级取决于他的页面使用的语言。

绝对定位元素,父元素-子元素高度关系:父元素relative,子元素absolute

此例中,子元素 box-xx 设置height,父元素 box-set 也设置了height。

父元素的高度并非由子元素高度撑起;

但二者之间存在联系:子元素是相对于父元素的边缘进行位移

父元素 height: 200px; 子元素 height: 80px;

父元素 height: 200px; 子元素 height: 20px;

父元素 height: 100px; 子元素 height: 80px;

父元素 height: 10px; 子元素 height: 80px;

父元素 height: 0; 子元素 height: 80px;

当一个绝对定位的元素没有明确指定高度和宽度,同时使用盒子位移的“top”和“bottom”属性时,会使整个元素的高度跨越整个容器。同样的,当这个元素同时使用位移“left”和“right”属性值,会使整个元素的宽度跨越整个容器。如果同时使用位移四个属性,可以指定一个宽度和高度显示元素。(这个时候绝对定位元素的宽度和高度都是100%。)

box-1 不指定height, width;

top: 10px; bottom: 10px;  /* 同时使用top, bottom, 高度跨越整个容器 */

left: 10px; right: 10px;      /* 同时适应left, right, 宽度跨越整个容器 */


 5.参考资料

HTML和CSS高级指南之二——定位详解

时间: 2024-10-14 10:12:30

CSS position 笔记+实验的相关文章

CSS学习笔记09 简单理解BFC

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>BFC</title> 6 <style type="text/css"> 7 .div1 {background-color: #FCE38A; width: 200px; height: 100px;}

CSS学习笔记总结和技巧

跟叶老师说项目,他叫我写一个静态首页,看起来挺简单的,但是下手才发现在真的不会怎么下手啊,什么模型啊模块啊都不懂,写毛线啊!! 如图:页面下拉还有侧栏,中间内容等. 可是答应跟老师做了,不能怂啊,于是硬着头皮,花两三天看在慕课网上学习Bootstrap(讲得挺好的,建议大白去看一下),其实我刚看完不久,里面很多东西其实作者都总结得很不错,还有演示. 收获很多,打算再看一下HTML的div+css布局,花一两天时间就可以写完那个界面.就是这么自信,哈哈哈~ 不逼自己一把,你永远不知道自己有多优秀.

Head First HTML与CSS阅读笔记(二)

上一篇Head First HTML与CSS阅读笔记(一)中总结了<Head First HTML与CSS>前9章的知识点,本篇则会将剩下的10~15章内容进行总结,具体如下所示. div与Span 此元素应该是HTML中使用频度最高的元素之一,div将属于一个逻辑区的元素包含起来: 如果添加div有助于将页面分解为逻辑区,保证结构清晰并便于指定样式,则应该使用div,否则,过多的div只会让页面更加复杂,不应滥用: width属性指定元素内容区的宽度,不包括内边距,边框和外边距的宽度: 整个

CSS自学笔记(7):CSS定位

很多时候,我们需要对一些元素进行自定义排序.布局等,这是就需要用到CSS的定位属性了,用这些属性对一些元素进行自定义排序.布局等操作,可以改变浏览器默认的死板的排序. CSS定位的功能很容易理解,它允许你定义元素框相对于其正常位置应该出现的位置,或者相对于父元素.另一个元素甚至浏览器窗口本身的位置. CSS的定位(position)属性有四种不同的定位类型,从而影响元素框的声称方式. CSS 内边距属性 属性 描述 备注 static 元素框正常生成 块级元素生成一个矩形框,作为文档流的一部分.

html+css学习笔记 4[定位]

如何让图1中的div2移动到如图2上的位置: 思路:哪些css命令能够影响盒子显示的位置呢? relative相对定位/定位偏移量 position:relative;  相对定位         a.不影响元素本身的特性: b.不使元素脱离文档流: c.如果没有定位偏移量,对元素本身没有任何影响: 定位元素位置控制         top/right/bottom/left  定位元素偏移量. absolute绝对定位/定位层级 osition:absolute;  绝对定位 a.使元素完全脱

CSS自学笔记(14):CSS3动画效果

在CSS3中也新增了一些能够对元素创建动画处理的属性.通过这些新增的属性,我们可以实现元素从一种样式变换成另一种样式时为元素添加动态效果,我们就可以取代网页中的动态图片.flash动画和JavaScript了. CSS3中新增的动画效果的属性以及主流浏览器支持情况 属性 浏览器支持 transition IE Firefox Chrome Safari(-webkit-) Opera @keyframes IE Firefox Chrome(-webkit-) Safari(-webkit-)

CSS position 属性

实例 定位 h2 元素: h2 { position:absolute; left:100px; top:150px; } 亲自试一试 浏览器支持 IE Firefox Chrome Safari Opera           所有主流浏览器都支持 position 属性. 注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit". 定义和用法 position 属性规定元素的定位类型. 说明 这个属性定义建立元素布局所用的定位机制.

css 学习笔记 一

 css学习笔记1 1.选择特定元素的选择符: 上下文选择符 标签1 标签2 {声明}      其中标签2是要选择的目标,而只有在标签1是其祖先元素(不一定是父元素)的情况下才会被选中.     css代码: body代码: 理解:section标签 article标签就属于上下文的关系,即article为section的后代,只有应用了section的样式,才能应用article的样式.注意:继承关系中的空格问题,有空格的表示祖先与后代的关系,css写法,body的代码为,说明页面样式表文件

CSS position的absolute和relative的解析[转]

定位一直是WEB标准应用中的难点,如果理不清楚定位那么可能应实现的效果实现不了,实现了的效果可能会走样.如果理清了定位的原理,那定位会让网页实现的更加完美. 定位的定义:在CSS中关于定位的内容是:      position:relative | absolute | static | fixed static(静态) 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级. relative(相对定位) 对象不可层叠.不脱离文档流,参考自身静态位置通过 top,bottom,