/*---仿-table---*/
.flex-out{
/*display: -webkit-box;*/ /*放在第一行不能适应电脑游览器,手机无问题。*/
display: -moz-box; /* Firefox 17- */
display: -webkit-flex; /* Chrome 21+, Safari 6.1+, iOS Safari 7+, Opera 15/16 */
display: -moz-flex; /* Firefox 18+ */
display: -ms-flexbox; /* IE 10 */
display: flex; /* Chrome 29+, Firefox 22+, IE 11+, Opera 12.1/17/18, Android 4.4+ */
display: -webkit-box; /* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */
}
.flex-in{
-webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
-moz-box-flex: 1; /* OLD - Firefox 19- */
-webkit-flex: 1; /* Chrome */
-ms-flex: 1; /* IE 10 */
flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}
<p class="flex-out">
<p class="flex-in" style="width:46%;">
<img src="http://cca.mbaobao.com/mbaobao/201410/09/qj_04.jpg" width="100%" >
<img src="http://cca.mbaobao.com/mbaobao/201410/09/qj_06.jpg" width="100%" >
</p>
<p class="flex-in" style="width:54%;">
<img src="http://cca.mbaobao.com/mbaobao/201410/09/qj_05.jpg" width="100%" >
</p>
</p>
代码如上,需求很简单只要让上面的这组p能实现table的效果就好;让手机能实现适应多种屏幕的大小,图片被设置成了100%;
出现的问题在于pc的游览器和手机游览器显示效果不同,但是把 display: -webkit-box; 移动到最后一行是无问题的。
我知道为什么这样可行,但是我不知道这样修改后会不会引发别的什么问题(经过测试是没问题的),但是感觉样式还是怪怪的。希望谁能回答下我的几个问题
display:flex;
是一种 CSS3 属性,用于多行多列布局,类似 table,但是有更大的灵活性。目前移动端只有最新的浏览器支持,如 Chrome、Firefox等。Android 4.1 的内置浏览器不支持,微信浏览器使用的 WebView 等都只有在最新的系统上才支持,如 4.3、4.4 等,具体细节你可以再去确定。display: -webkit-box;
是一种特别适合微信内置浏览器的布局方式。移到最后一行没有问题,是因为这时候
display: -webkit-box;
会把前面的display: flex;
覆盖掉。