CSS - box-align

Example

 

HTML
<!DOCTYPE html>
<html>
<head>
<title>CSS box-align example</title>
<style>
div.example {
  display: box;                   /* As specified */
  display: -moz-box;              /* Mozilla */
  display: -webkit-box;           /* WebKit */
	
  /* Make this box taller than the children, 
     so there is room for the box-pack */
  height: 400px;           
	
  /* Make this box wider than the children
     so there is room for the box-align */
  width: 300px;

  /* Children should be oriented vertically */
  box-orient: vertical;           /* As specified */
  -moz-box-orient: vertical;      /* Mozilla */
  -webkit-box-orient: vertical;   /* WebKit */

  /* Align children to the horizontal center of this box */
  box-align: center;              /* As specified */
  -moz-box-align: center;         /* Mozilla */
  -webkit-box-align: center;      /* WebKit */
	
  /* Pack children to the bottom of this box */
  box-pack: end;                  /* As specified */
  -moz-box-pack: end;             /* Mozilla */
  -webkit-box-pack: end;          /* WebKit */
}

div.example > p {            
  /* Make children narrower than their parent, 
     so there is room for the box-align */ 
  width: 200px;
}
</style>
</head>
<body>
  <div class="example">
    <p>I will be second from the bottom of div.example, centered horizontally.</p>
    <p>I will be on the bottom of div.example, centered horizontally.</p>
  </div>
</body>
</html>

Syntax  

CSS
start <a title="Single bar" href="css/value_definition_syntax#single_bar">|</a> center <a title="Single bar" href="css/value_definition_syntax#single_bar">|</a> end <a title="Single bar" href="css/value_definition_syntax#single_bar">|</a> baseline <a title="Single bar" href="css/value_definition_syntax#single_bar">|</a> stretch

Values

start
The box aligns contents at the start, leaving any extra space at the end.
center
The box aligns contents in the center, dividing any extra space equally between the start and the end.
end
The box aligns contents at the end, leaving any extra space at the start.
baseline
The box aligns the baselines of the contents (lining up the text). This only applies if the box's orientation is horizontal.
stretch
The box stretches the contents so that there is no extra space in the box.

Description  

The CSS box-align property specifies how an element aligns its contents across (perpendicular to) the direction of its layout. The effect of this is only visible if there is extra space in the box. See Flexbox for more about the properties of flexbox elements.

The direction of layout depends on the element's orientation: horizontal or vertical.

Initial valuestretch
Applies toelements with a CSS display value of box or inline-box
Inheritedno
Mediavisual
Computed valueas specified
Animatableno
Canonical orderthe unique non-ambiguous order defined by the formal grammar

Browser Compatibility  

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes)-webkit (Yes)-moz[1] No support (Yes)-webkit 1.1-khtml
3.0-webkit
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? ? ? No support ? 1.0-webkit

[1] In addition to the -moz prefixed support, Gecko 48.0 (Firefox 48.0 / Thunderbird 48.0 / SeaMonkey 2.45) added support for a -webkit prefixed version of the property for web compatibility reasons behind the preference layout.css.prefixes.webkit, defaulting to false. Since Gecko 49.0 (Firefox 49.0 / Thunderbird 49.0 / SeaMonkey 2.46) the preference defaults to true.

Notes  

The edge of the box designated the start for alignment purposes depends on the box's orientation:

Horizontal top
Vertical left

The edge opposite to the start is designated the end.

If the alignment is set using the element's align attribute, then the style is ignored.

See Also  

Specifications  

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/css/box-align

CSS CSS Property NeedsBrowserCompatibility NeedsMobileBrowserCompatibility NeedsUpdate Reference