CSS布局

1.块元素&内联元素

块级元素 (例如div 默认属性为display:block  会独占一行 可以加边框看效果  )高度是由div中内容决定

####文档流:文档内元素的流动方向,内联元素是从左往右,块级元素是从上往下(因为默认每个块都是一行的宽度)####

内联元素  高度是由其中文字高度决定的,内联元素设置width和height是无效的,上下的margin和padding也无效,要将它们设为display:inline-block才有效。

------------

尽量不写height和width,这两个属性会引出很多bug,要宽高的时候可以用padding,另外span元素设置padding的时候要将它设为display:inline-block,因为内联元素不能设置宽高,

#####  inline-block具有inline的同行特性,也具有block的高度特性。使用了 inline-block   还要使用vertical-align: top; 来清除 一个下边距的bug######

对于display:inline(内联元素)的元素,设置width/height/上下margin和padding都是无效的

------------

2. float(浮动)

布局过程经常!!用到浮动

例如:float:left;  元素靠左浮动

块元素加上浮动会内缩  下面的div宽度只有4个字的宽度  用了浮动后后面的div会跟着飘上来!!! 所以需要在加了浮动的div的父级元素加上 clearfix 来解决bug 

           <div style="clearfix">  

例如:<div style="float:left">我变瘦了 </div>

           <div>我在哪</div>

           </div>

----------------

.clearfix::after{

  content: "";

  display: block;

  clear: both;

}

---------------

3.让一个背景图居中,并且让它自适应屏幕

background: url("whhhhhh.jpg") no-repeat center center ;

background-size: cover;

4.让一个div水平居中

margin-left:auto;

margin-right:auto;

5.postion  

让一个div在父级元素中绝对居中  父DIV要使用position:relative;

儿子要使用 position: absolute;

6. 脱离文档流

相对于窗口定位:

position:fixed

相对于父级元素定位:

在父级元素加上:position:relative

给自己加上:position:absolute(绝对定位后元素会变成display:block)

7.使用::before和::after时

要加上这两行的代码,才会显示内容

content: "";

display:block;    //如果是绝对定位就不用加,因为绝对定位后元素会变成display:block;


#####################################################################

1.左右布局

创建一个父及div 这个div有俩儿子 父级div 要用下clearfix样式来清除儿子使用了float后带来的bug 在单独写个样式让自己在浏览器中左右居中 margin:0 auto; 这样好看点 两个儿子添加float:left ; 在设置下宽度 

在div中没有内容的情况下给div加个边框容易辨识

2.左中右布局

同上 只要三个儿子宽度加起来不超过父亲就OK

3.水平居中

使用 margin:0 auto;  想居中就别再加float了吆

4.垂直居中 

文字的话可以用line-height: ;   ##当自己太大时不准##

还可以使用position 这里又要讲到父亲跟儿子  父亲必须添加position:relative

儿子要用position:absolute  这就是传说的绝对定位 根据他老子定位  然后设定padding  margin top调节位置

-------------------------------------------------------------------------------------------

布局代码连接  https://chenfeng900000029.github.io/yinyang.io/layoat/layout.html 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,860评论 1 92
  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 4,624评论 5 15
  • CSS布局解决方案(终结版) 前端布局非常重要的一环就是页面框架的搭建,也是最基础的一环。在页面框架的搭建之中,又...
    杀个程序猿祭天阅读 597评论 0 2
  • 居中布局 水平居中 1)使用inline-block+text-align(1)原理、用法 原理:先将子框由块级元...
    littlesiqi阅读 268评论 0 0
  • 亲爱的丁浩轩: 你好! 此刻,正在高淳区阳江中心小学听课,我在想:丁浩轩上课会是什么样子的呢?专心...
    有一条小鱼阅读 166评论 0 0