完整的属性集如下所示:
.foo {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-moz-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-moz-box-align: center;
-ms-flex-line-pack: center;
-webkit-align-content: center;
align-content: center;
-webkit-box-orient: horizontal;
-moz-box-orient: horizontal;
-webkit-box-direction: normal;
-moz-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
请注意row
/horizontal
是默认方向,除非您从其他地方的先前column
/vertical
声明中覆盖它,否则没有必要添加它。
将 flex 容器设置为 inline 遵循与其他内联属性(例如 inline-block、inline-table 等)相同的命名约定:
.foo {
display: -webkit-inline-box;
display: -moz-inline-box;
display: -ms-inline-flexbox;
display: -webkit-inline-flex;
display: inline-flex;
}
如果您专门为垂直居中执行此操作,则 2009 实现下的 Firefox 有时可能会出现问题,因为它并不总是正确地换行。我的建议是对 2009 年的房产使用与现代房产不同的房产,如下所示:
http://codepen.io/cimmanon/pen/mxuFa
li {
text-align: center;
vertical-align: middle;
display: inline-block;
display: -webkit-inline-box;
display: -moz-inline-box;
display: -ms-inline-flexbox;
display: -webkit-inline-flex;
display: inline-flex;
/* vertical centering for legacy, horizontal centering for modern */
-webkit-box-pack: center;
-moz-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
/* modern Flexbox only */
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
/* legacy Flexbox only */
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-webkit-box-direction: normal;
-moz-box-direction: normal;
}