一个盒子我们会分成几个部分:
内边区(content)
内边距(padding)
边框(border)
外边距(margin)
内容区
内容区指的是盒子中放置内容的区域,也就是元素中的文本内容,子元素都是存在于内容区中的。
如果没有为元素设置内边距和边框,则内容区大小默认和盒子大小是一致的。
通过width和height两个属性可以设置内容区的大小。
width和height属性只适用于块元素。
内边距
内边距指的是元素内容区与边框以内的空间。
默认情况下width和height不包含padding的大小。
使用padding属性来设置元素的内边距
padding:10px 20px 30px 40px
设置元素的上、右、下、左四个方向的内边距。
padding:10px 20px 30px;
设置元素的上、左右、下四个方向的内边距。
padding:10px 20px;
设置元素的上下、左右四个方向的内边距。
padding:10px
设置元素上下左右四个方向的内边距。
同时在css中还提供了padding-top、padding-right、padding-left、padding-bottom分别用来指定四个方向的内边距。
边框
可以在元素周围创建边框,边框是元素可见框的最外部。
可以使用border属性来设置盒子的边框。
和padding一样,默认width和height并包括边框的高度。
border:1px red solid
分别指定了边框的宽度、颜色、样式。
使用border-top/left/right/bottom分别指定上左右下四个边框的方向。
边框的多种样式
--none 没有边框
--dotted 点线
--dashed 虚线
--solid 实线
--double 双线
--groove 槽线
--ridge 脊线
--inset 凹边
--outset 凸边
外边距
外边距是元素边框与周围元素相距的空间。
使用margin属性可以设置外边距。
使用margin-top/right/left/bottom为元素设置四个方向。
使用margin:0 auto 可以使元素居中。
display
通过display来修改元素的性质。
--block:设置元素为块元素
--inline:设置元素为行内元素
--inline-block:设置元素为行内块元素
--none: 隐藏元素
visibility
visibility属性主要用于元素是否可见
-visible:可见的
-hidden: 隐藏的
overflow
当相关标签里面的内容超出了样式的宽度和高度使,就会发生一些奇怪的事情,浏览器会让内容溢出盒子。
可以通过overflow来控制内容溢出的情况。
可选值:
*--visible:默认值
--scroll:添加滚动条
--auto:根据需要添加滚动条
--hidden:隐藏超出盒子的内容
文档流
文档流指的是文档中可实现的对象在排列时所占用的位置,
将窗体自上而下分为一行行,并在每行中按从左至右的顺序排放元素,即为文档流。
也就是说在文档流中元素默认会紧贴到上一个元素的右边,如果右边不足以放下元素,元素则会另起一行,在新的一行中继续从左至右摆放。
这样一来每一个块元素都会另起一行,那么我们如果想在文档流中进行布局就会变得比较麻烦。
网友评论