任务10

浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响?

浮动元素的主要特征是脱离普通流,根据设定的值向左或向右偏移,直到其边缘遇到父元素的边界或者另一个浮动元素的边框。
对父容器:如果父容器内的元素均设置了浮动,那么他们脱离普通流无法撑起父容器的高度,导致父元素的塌陷。
对其它浮动元素:同一父容器内的浮动元素按照设定的方向并排排列,当父元素的宽度不够时,后面的元素会向下移动,直到有足够的空间;如果浮动元素的高度不同,那么有可能挡住移动的路径。
对普通元素:无法辨别普通元素,有可能导致覆盖其它普通元素,占据其位置
对文字:文字能够识别浮动元素,会围绕浮动元素

清除浮动指什么? 如何清除浮动?

1.通过在浮动元素末尾添加一个空的带有clear:both属性的div标签
2.使用:after 伪元素 消除浮动
3.父元素也设置浮动 或者display-blocks(或者其它生成BFC的方式)

有几种定位方式,分别是如何实现定位的,参考点是什么,使用场景是什么?

inherit:继承父元素定位属性。
static:默认值,没有定位,元素出现在正常的文档流中。参考点是文档流中的位置。
relative:相对定位。相对于元素本身正常位置进行定位,通过top、bottom、left、right属性来设置偏移量。使用场景:为绝对定位设定参照物或对元素自身位置进行局部调整。
absolute:绝对定位。相对于static定位意外的第一个祖先元素进行定位,若都没有发现则以html标签为参考进行定位。使用场景:当想让元素参照特定参照物进行定位时使用。
fixed:固定定位。生成绝对定位元素,相对于viewport进行定位。
sticky:对象在常态时遵循普通流。它就像是relative和fixed的合体,当在屏幕中时按常规流排版,当卷动到屏幕外时则表现如fixed。兼容性不佳,不常用。

z-index 有什么作用? 如何使用?

当页面上出现多个由绝对定位(position:absolute)或固定定位(position:fixed)所产生的浮动层时,必然就会产生一个问题,就是当这些层的位置产生重合时,谁在谁的上面呢?或者说谁看得见、谁看不见呢?这时候就可以通过设置z-index的值来解决,这个值较大的就在上面,较小的在下面。
z-index的意思就是在z轴的顺序,如果说网页是由x轴和y轴所决定的一个平面,那么z轴就是垂直于屏幕的一条虚拟坐标轴,浮动层就在这个坐标轴上,那么它们的顺序号就决定了谁上谁下了。
z-index仅对定位元素有效。

position:relative和负margin都可以使元素位置发生偏移?二者有什么区别

position:relative和负margin都可以使元素位置发生偏移,二者的区别表现在:
margin会使元素在文档流中的位置发生偏移,它会放弃偏移之前占据的空间,紧挨其后的元素会填充这部分空间;
相对定位后元素位置发生偏移,它仍会坚守原来占据的空间,不会让文档流的其他元素流入。

BFC 是什么?如何生成 BFC?BFC 有什么作用?举例说明

BFC是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。
如何形成BFC :
浮动(none除外),绝对定位, display:inline-block|table-cells|table-captions, overflow的值不为visible时可以创建一个新的格式化上下文。根元素如html元素也可以触发BFC。
作用:
(1) 解决margin重叠问题,同一个BFC中,相邻元素之间的边距会合并,如果把这两个元素分别放在两个BFC中,他们的边距就不会合并。一般应用于嵌套。
(2)清除浮动。BFC不会重叠浮动元素。
举例:当父容器的子元素都采用浮动时父容器会塌陷,此时可以加入新的属性使容器形成BFC从而计算浮动元素的高避免塌陷

在什么场景下会出现外边距合并?如何合并?如何不让相邻元素外边距合并?

场景:
同一个BFC内,且同处于普通流中的垂直相邻元素外边距合并。
父子元素的外边距合并。如果块级父元素中,不存在border-top、padding-top、inline content、 清除浮动 这四条属性,会发生上外边距合并;若块级父元素的 margin-bottom 与它的最后一个子元素的margin-bottom 之间没有父元素的 border、padding、inline content、height、min-height、 max-height 分隔时,就会发生 下外边距合并 现象。
空元素的外边距合并。如果存在一个空的块级元素,其 border、padding、inline content、height、min-height 都不存在。那么此时它的上下边距中间将没有任何阻隔,此时它的上下外边距将会合并。

合并规则:
两个margin都是正值的时候,取两者的最大值;
当 margin 都是负值的时候,取的是其中绝对值较大的,然后,从0位置,负向位移;
当有正有负的时候,相加的和。
所有毗邻的margin要一起参与运算,不能分步进行。

不让相邻元素外边距合并的方法:
被非空内容、padding、border 或 clear 分隔开。
不在一个普通流中或一个BFC中。
margin在垂直方向上不毗邻。

父子元素外边距合并

父子元素外边距合并举例

如图 对box2设置margin-top后box2的位置并未相对于box1下移;而是发生外边距合并导致整体下移,box3由于margin-top小于box2的margin-top,所以50px未生效,与box2合并为50px。

代码1
代码2
代码3
代码4

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,737评论 1 92
  • 浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响?## 特征:浮动模型也是一种可视化格式模...
    饥人谷_zhangfan阅读 280评论 0 0
  • 1. 浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响? 特征:浮动元素不在普通的文档流中...
    在乎者也阅读 1,167评论 0 1
  • 问答## 1 . 浮动的特征,影响##### 浮动模型也是一种可视化格式模型,浮动的框可以左右移动(根据float...
    mhy_web阅读 368评论 0 0
  • 1、浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响? 2、清除浮动指什么? 如何清除浮动...