zoukankan      html  css  js  c++  java
  • CSS尺寸与补白

    尺寸与补白

    width

    语法:

    width:长度值 | 百分比 | auto

    默认值:auto

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • auto: 无特定宽度值,取决于其它属性值
    • 长度值: 用长度值来定义宽度。不允许负值
    • 百分比: 用百分比来定义宽度。百分比参照包含块宽度。不允许负值

    说明:

    定义元素的宽度。

    • 对于img元素来说,若仅指定此属性,其height值将会根据图片源尺寸进行等比例缩放。
    • width属性是盒模型的重要组成部分。
    • 对应的脚本特性为:width

    min-width

    语法:

    min-width:长度值 | 百分比

    默认值:0

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • 长度值: 用长度值来定义最小宽度。不允许负值
    • 百分比: 用百分比来定义最小宽度。不允许负值

    说明:

    定义元素的最小宽度。

    • min-width属性的值小于width时,min-width属性将会被忽略。
    • min-width属性的值大于width时,min-width属性将会被忽略,同时width会忽略自己的值定义而使用min-width的值作为自己的使用值。
    • min-width属性的值大于max-width时,max-width属性将会被忽略。
    • 对应的脚本特性为:minWidth

    max-width

    语法:

    max-width:长度值 | 百分比 | none

    默认值:none

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • none: 无最大宽度限制
    • 长度值: 用长度值来定义最大宽度。不允许负值
    • 百分比: 用百分比来定义最大宽度。不允许负值

    说明:

    定义元素的最大宽度。

    • max-width属性的值小于width时,max-width属性将会被忽略,同时width会忽略自己的值定义而使用max-width的值作为自己的使用值。
    • max-width属性的值大于width时,max-width属性将会被忽略。
    • max-width属性的值小于min-width时,max-width属性将会被忽略。
    • 对应的脚本特性为:maxWidth

    height

    语法:

    height:长度值 | 百分比 | auto

    默认值:auto

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • auto: 无特定高度值,取决于其它属性值
    • 长度值: 用长度值来定义高度。不允许负值
    • 百分比: 用百分比来定义高度。不允许负值

    说明:

    定义了元素内容区(Content Area)的高度

    • 对于img元素来说,若仅指定此属性,其width值将会根据图片源尺寸进行等比例缩放。
    • width属性是盒模型的重要组成部分。
    • 对应的脚本特性为:height

    min-height

    语法:

    min-height:长度值 | 百分比

    默认值:0

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • 长度值: 用长度值来定义最小高度。不允许负值
    • 百分比: 用百分比来定义最小高度。不允许负值

    说明:

    定义元素的最小高度。

    • min-height属性的值小于height时,min-height属性将会被忽略。
    • min-height属性的值大于height时,min-height属性将会被忽略,同时height会忽略自己的值定义而使用min-height的值作为自己的使用值。
    • min-height属性的值大于max-height时,max-height属性将会被忽略。
    • 对应的脚本特性为:minHeight

    max-height

    语法:

    max-height:长度值 | 百分比 | none

    默认值:none

    适用于:除非置换内联元素,table-row, table-row-group之外的所有元素

    继承性:无

    动画性:当值为 长度值 | 百分比 时

    计算值:指定的值

    媒 体:视觉

    取值:

    • none: 无最小高度限制
    • 长度值: 用长度值来定义最大高度。不允许负值
    • 百分比: 用百分比来定义最大高度。不允许负值

    说明:

    定义元素的最大高度。

    • max-height属性的值小于height时,max-height属性将会被忽略,同时height会忽略自己的值定义而使用max-height的值作为自己的使用值。
    • max-height属性的值大于height时,max-height属性将会被忽略。
    • max-height属性的值小于min-height时,max-height属性将会被忽略。
    • 对应的脚本特性为:maxHeight

    margin

    简写属性语法:

    margin:[ 长度值 | 百分比 | auto ]{1,4}

    默认值:看每个独立属性

    适用于:所有元素,除非 table | inline-table | table-caption的表格类元素之外

    继承性:无

    动画性:看每个独立属性

    计算值:看每个独立属性

    媒 体:视觉

    分拆纵向独立属性语法:

    vertical-margin:长度值 | 百分比 | auto

    vertical-margin = margin-top,margin-bottom

    默认值:0

    适用于:所有元素,除非 table | inline-table | table-caption的表格类元素和非替代行内元素之外

    继承性:无

    动画性:当取值为 长度值 | 百分比 时

    计算值:指定的百分比或绝对长度值

    媒 体:视觉

    分拆横向独立属性语法:

    horizontal-margin:长度值 | 百分比 | auto

    horizontal-margin = margin-right,margin-left

    默认值:0

    适用于:所有元素,除非 table | inline-table | table-caption的表格类元素之外

    继承性:无

    动画性:当取值为 长度值 | 百分比 时

    计算值:指定的百分比或绝对长度值

    媒 体:视觉

    取值:

    • auto: 水平(默认)书写模式下,vertical-margin计算值为0,horizontal-margin取决于包含块的剩余可用空间。
    • 长度值: 用长度值来定义外补白。可以为负值
    • 百分比: 用百分比来定义外补白。水平(默认)书写模式下,参照其包含块的width进行计算,其它情况参照height,可以为负值

    说明:

    简写属性。为元素设置所有四个方向(上右下左)的外边距。

    • margin属性接受1~4个参数值。如果提供四个参数值,将按上、右、下、左的顺序作用于四边;提供三个,第一个用于上,第二个用于左、右,第三个用于下;提供两个,第一个用于上、下,第二个用于左、右;只提供一个,同时用于四边。

    • 非替代(non-replaced)行内元素可以使用该属性定义horizontal-margin;若要定义vertical-margin,必须改变元素为块级或行内块级。

    • 外延边距始终透明,即不可见也无法设置背景等任何样式。

    • 某些相邻的margin会发生合并,我们称之为margin折叠:

      h2{margin:10px 0;}
      div{margin:20px 0;}
      ......
      <h2>这是一个标题</h2>
      <div>
      	<h2>这是又一个标题</h2>
      </div>
      

      本例中,第1个h2的margin-bottom,div的margin-top,第2个h2的margin-top是相邻的,三者会被合并取其中最大的那个值作为最后的间隙,所以它们之间的margin间隙最后是(20px)。

      如果给上例中的div加上border的话:

      h2{margin:10px 0;}
      div{margin:20px 0;border:1px solid #aaa;}
      ......
      <h2>这是一个标题</h2>
      <div>
      	<h2>这是又一个标题</h2>
      </div>
      

      本例中,第一个h2的margin-bottom(10px),div的margin-top(20px)将被合并,但第二个h2的margin-top不与它们合并,因为它被border分隔,不与它们相邻。

    • margin折叠常规认知:

      • margin折叠只发生在块级元素上;
      • 浮动元素的margin不与任何margin发生折叠;
      • 设置了属性overflow且值为非visible的块级元素,将不与它的子元素发生margin折叠;
      • 绝对定位元素的margin不与任何margin发生折叠;
      • 根元素的margin不与其它任何margin发生折叠;
    • 对应的脚本特性为:margin

    分拆纵向独立属性。为元素设置上、下外边距。

    • 替代(Replaced)行内元素可以应用该属性;非替代(non-Replaced)行内元素要使用该属性必须改变元素为块级或行内块级。
    • 水平(默认)书写模式下,margin 合并只发生在vertical-margin上。
    • 对应的脚本特性分别为:marginTop, marginBottom

    分拆横向独立属性。为元素设置上、下外边距。

    • 所有的行内元素均可以应用该属性。
    • 默认情况下,horizontal-margin不会发生 margin 折叠,除非将书写模式改变为纵向。
    • 对应的脚本特性分别为:marginRight, marginLeft

    padding

    简写属性语法:

    padding:[ 长度值 | 百分比 ]{1,4}

    默认值:看每个独立属性

    适用于:所有元素,除table-row-group | table-header-group | table-footer-group | table-column-group | table-row

    继承性:无

    动画性:看每个独立属性

    计算值:看每个独立属性

    媒 体:视觉

    分拆独立属性语法:

    padding-*:长度值 | 百分比

    padding-* = padding-top,padding-right,padding-bottom,padding-left

    默认值:0

    适用于:所有元素,除table-row-group | table-header-group | table-footer-group | table-column-group | table-row

    继承性:无

    动画性:是

    计算值:指定的百分比或绝对长度值

    媒 体:视觉

    取值:

    • 长度值: 用长度值来定义内补白。不允许负值
    • 百分比: 用百分比来定义内补白。水平(默认)书写模式下,参照其包含块的width进行计算,其它情况参照height,不允许负值

    说明:

    简写属性。为元素设置所有四个方向(上右下左)的内边距。

    • padding属性接受1~4个参数值。如果提供四个参数值,将按上、右、下、左的顺序作用于四边;提供三个,第一个用于上,第二个用于左、右,第三个用于下;提供两个,第一个用于上、下,第二个用于左、右;只提供一个,同时用于四边。
    • 需要注意的是,当我们为行内元素定义纵向内补白(padding-top/padding-bottom)时,虽然不需要将之转化为行内块或者块级,但是给行内元素设置纵向内补白并不会影响布局。内补白会在当前元素的行框基础上向顶部和顶部外延,但是这些外延不会拓展新的布局大小(你甚至可以把它想象成类似outline)。
    • 对应的脚本特性为:padding

    分拆独立属性。为元素单独设置上、右、下、左4个方向的内边距。

    • 对应的脚本特性分别为:paddingTop, paddingRight, paddingBottom, paddingLeft
  • 相关阅读:
    javascript运算符
    javascript字符串转数字
    javascript的变量声明和数据类型
    javascript的历史和入门
    CSS中定位
    CSS中盒子模型
    CSS操作表格的边框和表格的属性示例代码
    常用的CSS样式示例代码
    CSS伪类选择器
    CSS选择器
  • 原文地址:https://www.cnblogs.com/lx-pricking/p/13199983.html
Copyright © 2011-2022 走看看