关于CSS布局和居中的总结

2016-11-13  本文已影响0人  明月照云归

CSS布局

一个元素在页面中一般有4种状态:

CSS定位只要依靠position属性实现,该属性有四个值:

float:

设置元素浮动, 该元素将脱离普通文档流。直到外边缘或者另一个浮动块的边缘。
注意,浮动对于普通流元素会形成一个挤压的状态, 比如<a></a><div></div> 这样一个布局,
如果设置div元素浮动,那么a元素就会被挤压到div元素的后面去。
同时,float元素的尺寸讲不会计入父元素的尺寸中, 所以, 这里就涉及到一个清除浮动的概念:
清楚浮动的几种做法:
1.父元素设置ovflow:hidden;
2.在需要清除浮动的底部加一个div标签, 同时,将这个标签clear:both;
3.使用伪类清楚浮动:在父元素上添加一个clear类 同时,讲该类设置成:

            {
              clear: both;
              content: " ";
              display: block;
              height: 0;
             visibility: hidden;
          }
ralative

相对定位原有位置不脱离普通文档流,相对自己原有的位置进行定位。

absolute

绝对定位, 脱离原有定位,相对于祖先中,已经定位的元素(相对和绝对)进行定位。

flexd

相对于浏览器定位, 不会随着滚动条滚动。
z-index: 对于relatvie absolute fixed 可以设置堆叠顺序。 值越大越在上面。

CSS中水平和垂直居中

水平居中:

1)行框: 只需要在父级元素中设置 text-align:center;
2)块级框:父级元素 margin:0 aoto;或者设置父级框 text-align:center;

垂直居中:
  1. 单行框:一般设置子元素 height 和 line-height一致就可以实现。

  2. 多级行框: 借助vertical-align: middle; 实现.

  3. 块级框:
    a)知道height :子元素设置为

     position: absolute;
     top: 50%; 
     height: 100px; 
     margin-top: -50px;
    

b)不知道height:子元素设置为:
position: absolute;
top: 50%;
transform: translateY(-50%);

3.于此同时, 设置合适的内边距也可以实现垂直和水平居中。
4.flex布局对于实现垂直居中更加简洁方便。

上一篇下一篇

猜你喜欢

热点阅读