css3:flex排版問題
問題描述
我在移動端做一個左右排版用了flex,圖片就是自適應的,但是出來的效果這樣是怎么回事? <p class='contentlist'><p class='_left'> <a target='_blank'> <img src='http://img01.sephome.com/201512/63CED07CABAD4C44B53079C5ABFF8C92.jpg' alt='' width='100%'> </a> </p> <p class='_right'> <a target='_blank'> <img src='http://img01.sephome.com/201512/D34E8FD9D59B4B28B7A955D7AEAA5D56.jpg' alt=''> </a> <a target='_blank'> <img src='http://img01.sephome.com/201512/A68FCD5B9C5842E38337D29ACAE7C12E.jpg' alt=''> </a> </p> </p> .contentlist{width: 98%;margin:0.5rem auto;display: flex;display: -webkit-flex;justify-content:space-between;-webkit-justify-content:space-between; }
出來的效果是這樣
實際要這樣
要怎么破
問題解答
回答1:個人理解雖然 space-between;是兩端對齊但是如果圖片太小撐不起p,是不是就會是上面的那樣。
._left{ width: 100%;} ._right{ width: 100%;}img{ width: 100%;}試一下。回答2:
1、首先你只設置了父級元素display: flex, 卻沒有告訴子集應該如何分配他的空間。
2、根據你的設計圖有三種布局方案plan A: 左右兩個子元素平分,flex的值設置的越大,那它就可以獲得越多的空間。
._left{flex:1; } ._right{ flex:1; }
plan B: 固定左元素的寬,右元素的flex:1, 右元素將會自動占滿父元素剩下的空間。
._left{width:10rem; } ._right{ flex:1; }
plan C: 固定右元素的寬,左元素的flex:1, 左元素將會自動占滿父元素剩下的空間。
._left{flex:1; } ._right{ flex:1; width:10rem; }
建議你到 http://flexboxfroggy.com/ 練習練習 flex布局,補充基礎知識
回答3:加上 align-items: stretch;
回答4:._left{width: 50%;height: 100%; } ._right{width: 50%;height: 100%; } img{width: 100%; } 試試。。。回答5:
justify-content:space-between;align-items:center;
display:flex;display:-webkit-flex;flex-wrap:wrap;justify-content:flex-start;
這堆東西確實是好用,然并...不兼容
相關文章:
1. 數組按鍵值封裝!2. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題3. java - 阿里的開發手冊中為什么禁用map來作為查詢的接受類?4. docker不顯示端口映射呢?5. javascript - webpack中alias配置中的“@”是什么意思?6. 主題切換問題,用過別人的webapp在后臺切換模板主題后手機端打開網頁就是切換到的主題了7. python - flask _sqlalchemy 能否用中文作為索引條件8. javascript - 為什么創建多行多列的表格最后只有一行內有表格9. javascript - ES6規范下 repeat 函數報錯 Invalid count value10. html5 - 使用echarts中的圖表 一個頁面導入了好幾個js圖表 實現echarts圖表隨著瀏覽器窗口變化而變化時出現了問題
