CSS布局相关

display的四种取值:

  • inline:使块级元素在一行展示(大部分HTML元素的宽、高、上下边距就无法设置了)
  • block:使内联元素各自占一行
  • inline-block:修饰的元素称之为行内块元素,它们会像行内元素一样在同一行显示,又可以像块元素一样设置高、宽、行高、边距
  • none:当一个元素的display属性被设为none时,该元素不会被渲染,也不会占位,就像不存在一样。

水平居中

  • text-align:center
    用于内联元素,inline-block元素或者文字,使用方法是为目标的父元素添加该样式。(可使用包裹器技巧)

e.g 想让一个<a>居中,可以用一个<p>包裹住它,然后给<p>加上一个text-align:center属性

  • margin: 0 auto
    用于块级元素
  • 直接调整margin,padding

垂直居中

  • line-height=height
    大多数情况下管用
  • 直接调整margin,padding

左右布局

  • float+clearfix
    子元素一个float:left,一个float:right,且宽度各自50%,父级元素clearfix
  • 绝对定位
    父级元素position: relative,子元素position: absolute,然后调整子元素的边距

左中右布局

  • float+clearfix
    子元素一个float:left,一个float:right,中间元素会自适应,然后调整中间元素的边距即可。
  • 绝对定位
    父级元素position: relative,子元素position: absolute,然后调整子元素的边距(左边元素left: 0;中间按需求设置;右边元素right: 0)

知识点

  • 内联元素的左右padding有用,上下padding没用(因为上下高度是由字体建议行高决定的)。加上display: inline-block就可以了。
  • 包裹器wrapper:在xx元素外面写一个div命名为xx-wrapper,将其包裹起来。可以实现:

内联元素居中:包裹一个父元素,添加text-align样式
元素不好利用padding调整位置:包裹一个父元素,在父元素上添加padding

  • 对块级元素设置inline-block,块级元素宽度会收缩
    块级元素下方会产生空隙(解决方法vertical-align:top;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,814评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,749评论 1 45
  • 主要参考文档:http://www.zhangxinxu.com/wordpress/2015/02/css-de...
    744354889606阅读 357评论 0 1
  • 前面学习了使用HTML为网页添加内容,要对所添加的内容进行布局,就需要使用到CSS,JS等,这里就记录一下自己关于...
    wxyzcctn阅读 568评论 0 3
  • 在孔子老家曲阜听过一个故事,不妨讲给大家听听:孔子的一个学生在扫地,门外来了一个客人,听说他是孔老先生的弟子后,客...
    醉美田园阅读 459评论 3 3