Skip to main content

height

The height CSS property specifies the height of an element. By default, the property defines the height of the content area. If {{cssxref("box-sizing")}} is set to border-box, however, it instead determines the height of the border area.

{{EmbedInteractiveExample("pages/css/height.html")}}

The {{cssxref("min-height")}} and {{cssxref("max-height")}} properties override height.

[!NOTE] As a geometric property, height also applies to the {{SVGElement("svg")}}, {{SVGElement("rect")}}, {{SVGElement("image")}}, and {{SVGElement("foreignObject")}} SVG elements, with auto resolving to 0 and percent values being relative to the SVG viewport height for <rect>. The CSS height property value overrides any SVG {{SVGAttr("height")}} attribute value set on the SVG element.

Syntax

/* <length> values */
height: 120px;
height: 10em;
height: 100vh;
height: anchor-size(height);
height: anchor-size(--myAnchor self-block, 250px);
height: clamp(200px, anchor-size(width));

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

/* Keyword values */
height: max-content;
height: min-content;
height: fit-content;
height: fit-content(20em);
height: auto;
height: minmax(min-content, anchor-size(width));
height: stretch;

/* Global values */
height: inherit;
height: initial;
height: revert;
height: revert-layer;
height: unset;

Values

  • {{cssxref("<length>")}}

    • : Defines the height as a distance value.
  • {{cssxref("<percentage>")}}

  • auto

    • : The browser will calculate and select a height for the specified element.
  • max-content

    • : The intrinsic preferred height.
  • min-content

    • : The intrinsic minimum height.
  • fit-content

    • : Use the available space, but not more than max-content, i.e. min(max-content, max(min-content, stretch)).
  • fit-content({{cssxref("&lt;length-percentage&gt;")}})

    • : Uses the fit-content formula with the available space replaced by the specified argument, i.e. min(max-content, max(min-content, <length-percentage>)).
  • stretch

    • : Sets the height of the element's margin box to the height of its containing block. It attempts to make the margin box fill the available space in the containing block, so in a way behaving similar to 100% but applying the resulting size to the margin box rather than the box determined by box-sizing.

      [!NOTE] To check aliases used by browsers for the stretch value and its implementation status, see the Browser compatibility section.

Accessibility

Ensure that elements set with a height aren't truncated and/or don't obscure other content when the page is zoomed to increase text size.

Formal definition

Formal syntax

Examples

Setting height using pixels and percentages

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%;
}

Result

{{EmbedLiveSample('Setting_height_using_pixels_and_percentages', 'auto', 240)}}

Specifications

Browser compatibility

See also

  • The box model
  • {{cssxref("width")}}
  • {{cssxref("box-sizing")}}
  • {{cssxref("min-height")}}, {{cssxref("max-height")}}
  • The mapped logical properties: {{cssxref("block-size")}}, {{cssxref("inline-size")}}
  • {{cssxref("anchor-size()")}}
  • {{cssxref("clamp", "clamp()")}}
  • {{cssxref("clamp", "minmax()")}}