csss的一些知识(三)

2017-10-22  本文已影响0人  羌生

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

1.特性:
2.影响:

二,清除浮动指什么? 如何清除浮动? 两种以上方法

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

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

...
.a{
  background:red;
  width:100px;
  height:100px;
}
.b{
  background:yellow;
  width:100px;
  height:100px;
  position:absolute;
  top:10px;
  left:10px;
  z-index:-1;
}
...
<div class="a">aaaa</div>
<div class="b">bbbb</div>
...

两个同级的div,给b块设置了绝对定位(z-index属性目前只有在position:relative、position:absolute和position:fixed参与的情况下才有作用,表示层级),本应覆盖a块,但是又给b块设置了z-index为-1,z-index为负数则表示离用户更远;

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

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

float为 left | right
overflow为 hidden | auto | scroll
display为 table-cell | table-caption | inline-block
position为 absolute | fixed

  1. BFC可以包含浮动
    如可以使用BFC的特性来解决容器塌陷的问题:
.box{
  border:4px solid;
  width:200px;
  overflow:hidden;   /*触发了BFC,解决了容器塌陷的问题*/
}
.a{
  width:100px;   
  height:100px;
  background:red;
  float:left; /*a块左浮动*/
}
.b{
  width:100px;
  height:100px;
  background:blue;
  float:right; /*b块右浮动*/
}
...
<div class="box">
      <div class="a">aaaa</div>
      <div class="b">bbbb</div>
    </div>
...

容器有个两个浮动块,这样会导致容器塌陷,为容器添加overflow:hidden,触发了BFC,解决了容器塌陷的问题;

六,在什么场景下会出现外边距合并?如何合并?如何不让相邻元素外边距合并?给个父子外边距合并的范例;

1.在什么场景下会出现外边距合并?如何合并?给个父子外边距合并的范例:
正正

设置A块的下margin为20px,B块的上margin为20px,这个时候他们的外边距合并了,A、B两块之间的间距为20px(如果A块的下margin值和B块的上margin值不一样,中间的间距将会取两个margin值中的最大值);

正负

设置A块的下margin为20px,设置B块的上margin为-10px,这个时候他们的外边距合并了,A、B两块之间的垂直间距为10px,A、B两块之间的间距距离是它们A块下margin,B块上margin值之和(如果这个和是负数的话,A块将被B块覆盖相应尺寸);

负负

设置A块的下margin为-40px,设置B块的上margin为-10px,这个时候他们的外边距合并了,A块被B块覆盖了40px,A、B两块之间的重合高度是A块下margin,B块上margin值中的最小值;

父子

将BOX块的上margin设置为10px,A块的上margin设置为30px,BOX块没有内边距和边框,这个时候他们的外边距合并了,BOX的实际上margin取决于BOX块和A块的上margin中的最大值。类似的,若块级父元素的 margin-bottom与它的最后一个子元素的margin-bottom之间没有父元素的border、padding、inline content、height、min-height、max-height分隔时,就会发生 下外边距合并现象。

2.如何不让相邻元素外边距合并?

2.1.用非空内容、padding、border 或 clear 让它们分隔开来;
2.2.将它们其中一个设置为浮动元素、inline-block 元素或绝对定位元素的。

上一篇 下一篇

猜你喜欢

热点阅读