Align排列对齐
对齐排列分两大列,一类是行内元素的左中右排列;二类是弹性布局的子元素对齐;通过_a[-*]独立设置父层的对齐排列方式。
Display呈现
标签的display属性通常使用[inline-]flex
、[inline-]block
、[inline-]grid
和inline
,另外可能会用到的flow-root
和none
。
需要特别说明下flow-root属性,当我们对block块元素的子元素使用float[:left/right]
属性时,会导致父元素塌陷,而对父元素使用flow-root
属性可以解决这个问题,该属性是block的加强属性。
- 输出
- HTML
-
浮动层浮动层非浮动层
-
本框架已经对常用display属性做了样式设定:
- _d-none => display:none;
- _d-flow => display:flow-root;
- _d-inline => display:inline;
- _d-grid => display:grid;
- _d-block => display:block;
- _d-flex => display:flex;
- _d-ingrid => display:inline-grid;
- _d-inblock => display:inline-block;
- _d-inflex => display:inline-flex;
Align排列
文本或子元素有两种排列方式,一是行内文本或子元素排列;二是弹性布局子元素的排列。
我们对元素使用align=left/center/right样式,其中的文本或行内元素会自动排序;但是对于flex布局的子元素的排列方式不会发生改变,因为flex布局中的子元素需要通过align-items
和justify-content
属性设置才可进行排序。
行内排序
通过_a-l
、_a-c
和_a-r
三个样式类可执行行内排序。a=align缩写,l=left缩写,c=center缩写,r=right缩写。
- 输出
- HTML
-
中国是世界四大文明古国之一
中国是世界四大文明古国之一
中国是世界四大文明古国之一
-
flex排序
对flex布局的子元素排序,需要先理解排序的原理,flex布局排序主要基于align-items
和justify-content
两个属性,他们的可用值如下:
属性 | 可选值 | 默认值 | 说明 |
---|---|---|---|
align-items | flex-start、center、flex-end | flex-start | 垂直排列方式,start排在上方,center排在中间,end排在下方 |
justify-content | flex-start、center、flex-end | flex-start | 水平排列方式,start排在左侧,center排在中间,end排在右侧 |
为此我们内建了表示弹性布局排序的样式类。
- _a-lt:左上角(left+top)
- _a-lc:左中侧(left+center)
- _a-lb:左下侧(left+bottom)
- _a-ct:中上侧(center+top)
- _a-cc:绝对中间(center+center)
- _a-cb:中下侧(center+bottom)
- _a-rt:右上侧(right+top)
- _a-rc:右中侧(right+center)
- _a-rb:右下侧(right+bottom)
- 输出
- HTML
-
- _a-lt(left+top)
- _a-ct(center+top)
- _a-rt(right+top)
- _a-lc(left+center)
- _a-cc(center+center)
- _a-rc(right+center)
- _a-lb(left+bottom)
- _a-cb(center+bottom)
- _a-rb(right+bottom)
-