height

height CSS 属性指定了一个元素的高度。默认情况下,这个属性决定的是内容区( content area)的高度,但是,如果将 box-sizing 设置为  border-box , 这个属性决定的将是边框区域(border area)的高度。
min-heightmax-height 属性会覆盖  height

语法

/* Keyword value */
height: auto;

/* <length> values */
height: 120px;
height: 10em;

/* <percentage> value */
height: 75%;

/* Global values */
height: inherit;
height: initial;
height: unset;

<length>
将高度定义为一个绝对值。
<percentage>
将高度定义为相对包含块高度的百分比。
border-box 
如果设置该值,则 <length> 或者 <percentage> 会设置为该元素的 border box。
content-box 
如果设置该值,则 <length> 或者 <percentage> 会设置为该元素的 content box。
auto
由浏览器为元素计算并选择一个高度。
fill 
根据文字方向,使用 fill-available 作为行大小或者块大小。
max-content 
设置为允许的最大高度。
min-content 
设置为允许的最小高度.
available 
包含块高度减去当前元素的边距,边框和填充。
fit-content 
将 fill-content 公式中的可用位置替换为特定的参数以进行使用,如:min(max-content, max(min-content, ))

Formal syntax

auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)

where
<length-percentage> = <length> | <percentage>

示例

HTML

<div id="taller">I'm 50 pixels tall.</div>
<div id="shorter">I'm 25 pixels tall.</div>
<div id="parent">
  <div id="child">
    I'm half the height of my parent.
  </div>
</div>

CSS

div {
  width: 250px;
  margin-bottom: 5px;
  border: 2px solid blue;
}

#taller {
  height: 50px;
}

#shorter {
  height: 25px;
}

#parent {
  height: 100px;
}

#child {
  height: 50%;
  width: 75%;
}

结果

无障碍问题

确保设定了 height 的元素在显示上不会被截断,或者当页面放大时增大的字体大小不会遮挡其他内容。 

规范

Specification Status Comment
CSS Basic Box Model
height
Working Draft Added the max-contentmin-contentavailablefit-contentborder-boxcontent-boxkeywords.
CSS Transitions
height
Working Draft Lists height as animatable.
CSS Level 2 (Revision 1)
height
Recommendation Adds support for the <length> values and precises on which element it applies to.
CSS Level 1
height
Recommendation Initial definition.
CSS Box Sizing Module Level 3
width
Working Draft Adds new sizing keywords for width and height.
初始值auto
适用元素all elements but non-replaced inline elements, table columns, and column groups
是否是继承属性
PercentagesThe percentage is calculated with respect to the height of the generated box's containing block. If the height of the containing block is not specified explicitly (i.e., it depends on content height), and this element is not absolutely positioned, the value computes to auto. A percentage height on the root element is relative to the initial containing block.
计算值a percentage or auto or the absolute length
Animation typea length, percentage or calc();

浏览器兼容性

BCD tables only load in the browser

参见