flex.scss 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  1. .dir-left-nowrap {
  2. /* 主轴 排列方式从左侧开始 不换行*/
  3. display: -webkit-box;
  4. display: -webkit-flex;
  5. display: flex;
  6. -webkit-flex-direction: row;
  7. flex-direction: row;
  8. flex-wrap: nowrap;
  9. }
  10. .dir-left-wrap {
  11. /* 主轴 排列方式从左侧开始 换行*/
  12. display: -webkit-box;
  13. display: -webkit-flex;
  14. display: flex;
  15. -webkit-flex-direction: row;
  16. flex-direction: row;
  17. flex-wrap: wrap;
  18. }
  19. .dir-left-wrap-reverse {
  20. /* 主轴 排列方式从左侧开始 换行 第一行在下方*/
  21. display: -webkit-box;
  22. display: -webkit-flex;
  23. display: flex;
  24. -webkit-flex-direction: row;
  25. flex-direction: row;
  26. flex-wrap: wrap-reverse;
  27. }
  28. .dir-right-nowrap {
  29. /* 主轴 排列方式从 右侧开始 */
  30. display: -webkit-box;
  31. display: -webkit-flex;
  32. display: flex;
  33. -webkit-flex-direction: row-reverse;
  34. flex-direction: row-reverse;
  35. flex-wrap: nowrap;
  36. }
  37. .dir-right-wrap {
  38. /* 主轴 排列方式从 右侧开始 换行*/
  39. display: -webkit-box;
  40. display: -webkit-flex;
  41. display: flex;
  42. -webkit-flex-direction: row;
  43. flex-direction: row;
  44. flex-wrap: wrap;
  45. }
  46. .dir-right-wrap-reverse {
  47. /* 主轴 排列方式从 右侧开始 换行 第一行在下方*/
  48. display: -webkit-box;
  49. display: -webkit-flex;
  50. display: flex;
  51. -webkit-flex-direction: row;
  52. flex-direction: row;
  53. flex-wrap: wrap-reverse;
  54. }
  55. .dir-top-nowrap {
  56. /* 主轴 排列方式从顶部开始 不换行 */
  57. display: -webkit-box;
  58. display: -webkit-flex;
  59. display: flex;
  60. -webkit-box-orient: vertical;
  61. -webkit-flex-direction: column;
  62. flex-direction: column;
  63. flex-wrap: nowrap;
  64. }
  65. .dir-top-wrap {
  66. /* 主轴 排列方式从顶部开始 换行*/
  67. display: -webkit-box;
  68. display: -webkit-flex;
  69. display: flex;
  70. -webkit-box-orient: vertical;
  71. -webkit-flex-direction: column;
  72. flex-direction: column;
  73. flex-wrap: wrap;
  74. }
  75. .dir-top-wrap-reverse {
  76. /* 主轴 排列方式从顶部开始 不换行换行 第一行在下方*/
  77. display: -webkit-box;
  78. display: -webkit-flex;
  79. display: flex;
  80. -webkit-box-orient: vertical;
  81. -webkit-flex-direction: column;
  82. flex-direction: column;
  83. flex-wrap: wrap-reverse;
  84. }
  85. .dir-bottom-nowrap {
  86. /* 主轴 排列方式从底部开始 */
  87. display: -webkit-box;
  88. display: -webkit-flex;
  89. display: flex;
  90. -webkit-flex-direction: column-reverse;
  91. flex-direction: column-reverse;
  92. flex-wrap: nowrap;
  93. }
  94. .dir-bottom-wrap {
  95. /* 主轴 排列方式从底部开始 不换行 换行*/
  96. display: -webkit-box;
  97. display: -webkit-flex;
  98. display: flex;
  99. -webkit-box-orient: vertical;
  100. -webkit-flex-direction: column;
  101. flex-direction: column;
  102. flex-wrap: wrap;
  103. }
  104. .dir-bottom-wrap-reverse {
  105. /* 主轴 排列方式从底部开始 不换行换行 第一行在下方*/
  106. display: -webkit-box;
  107. display: -webkit-flex;
  108. display: flex;
  109. -webkit-box-orient: vertical;
  110. -webkit-flex-direction: column;
  111. flex-direction: column;
  112. flex-wrap: wrap-reverse;
  113. }
  114. .main-left {
  115. /* 主轴 左对齐 */
  116. display: -webkit-box;
  117. display: -webkit-flex;
  118. display: flex;
  119. -webkit-justify-content: flex-start;
  120. justify-content: flex-start;
  121. }
  122. .main-right {
  123. /* 主轴 右对齐 */
  124. display: -webkit-box;
  125. display: -webkit-flex;
  126. display: flex;
  127. -webkit-justify-content: flex-end;
  128. justify-content: flex-end;
  129. }
  130. .main-between {
  131. /* 主轴 两端对齐 */
  132. display: -webkit-box;
  133. display: -webkit-flex;
  134. display: flex;
  135. -webkit-justify-content: space-between;
  136. justify-content: space-between;
  137. }
  138. .main-center {
  139. /* 主轴 居中对齐 */
  140. display: -webkit-box;
  141. display: -webkit-flex;
  142. display: flex;
  143. -webkit-box-pack: center;
  144. -webkit-justify-content: center;
  145. -ms-flex-pack: center;
  146. justify-content: center;
  147. }
  148. .main-around {
  149. /* 主轴 项目位于各行之前、之间、之后都留有空白的容器内*/
  150. display: -webkit-box;
  151. display: -webkit-flex;
  152. display: flex;
  153. -webkit-justify-content: space-around;
  154. justify-content: space-around;
  155. }
  156. .cross-top {
  157. /* 交叉轴 起点对齐 */
  158. display: -webkit-box;
  159. display: -webkit-flex;
  160. display: flex;
  161. -webkit-align-items: flex-start;
  162. align-items: flex-start;
  163. }
  164. .cross-bottom {
  165. /* 交叉轴 终点对齐 */
  166. display: -webkit-box;
  167. display: -webkit-flex;
  168. display: flex;
  169. -webkit-box-align: end;
  170. -webkit-align-items: flex-end;
  171. -ms-flex-align: end;
  172. -ms-grid-row-align: flex-end;
  173. align-items: flex-end;
  174. }
  175. .cross-baseline {
  176. /* 交叉轴 第一行文字基线对齐 */
  177. display: -webkit-box;
  178. display: -webkit-flex;
  179. display: flex;
  180. -webkit-align-items: baseline;
  181. align-items: baseline;
  182. }
  183. .cross-center {
  184. /* 交叉轴 居中对齐 */
  185. display: -webkit-box;
  186. display: -webkit-flex;
  187. display: flex;
  188. -webkit-align-items: center;
  189. align-items: center;
  190. }
  191. .cross-stretch {
  192. /* 交叉轴 高度并排铺满 高度不固定*/
  193. display: -webkit-box;
  194. display: -webkit-flex;
  195. display: flex;
  196. -webkit-align-items: stretch;
  197. align-items: stretch;
  198. }
  199. .flex-wrap {
  200. /* 流模式 第一行在上方 */
  201. display: -webkit-box;
  202. display: -webkit-flex;
  203. display: flex;
  204. -webkit-flex-wrap: wrap;
  205. flex-wrap: wrap;
  206. }
  207. .flex-wrap-reverse {
  208. /* 流模式 第一行在下方 */
  209. display: -webkit-box;
  210. display: -webkit-flex;
  211. display: flex;
  212. -webkit-flex-wrap: wrap-reverse;
  213. flex-wrap: wrap-reverse;
  214. }
  215. .box-grow-0 {
  216. /* flex 子元素固定宽度*/
  217. min-width: 0;
  218. -webkit-box-flex: 0;
  219. -webkit-flex-grow: 0;
  220. -ms-flex-positive: 0;
  221. flex-grow: 0;
  222. -webkit-flex-shrink: 0;
  223. -ms-flex-negative: 0;
  224. flex-shrink: 0;
  225. }
  226. .box-grow-1 {
  227. /* flex 子元素等分 */
  228. min-width: 0;
  229. -webkit-box-flex: 1;
  230. -webkit-flex-grow: 1;
  231. -ms-flex-positive: 1;
  232. flex-grow: 1;
  233. -webkit-flex-shrink: 1;
  234. -ms-flex-negative: 1;
  235. flex-shrink: 1;
  236. }
  237. .inline-flex {
  238. display: -webkit-inline-flex;
  239. display: inline-flex;
  240. }