width
設置的是layout viewport 的寬度initial-scale=1.0
自帶 width=device-width
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
來源:慕課網css
源HTML文件(備份下載):web_flex.html.ziphtml
新版flex佈局 和 舊版flexbox佈局 對比:web
新flex佈局 | 舊flexbox佈局 |
---|---|
display: -webkit-flex; | display: -webkit-flex-box; |
-webkit-flex: 1; | -webkit-flex-box: 1; |
justify-content: center; | box-pack: center; |
align-items: center; | box-align: center; |
@media screen and (max-width:1024px) { /* ... */ }
使用媒體查詢來適應不一樣的固定寬度,只會從一組css切換到另外一組css, 沒有平滑漸變。當沒有命中媒體查詢時,變現就變得不可控(滾動,換行)。
因此須要百分比佈局。佈局
相似第一點,圖片也使用百分比。性能
img { max-width: 100%; height: auto; }
當頁面寬度太小時,就須要作出一些處理:學習
缺點:字體
優勢:flex
在retina屏幕上渲染圖片,爲了不圖片產生模糊,圖片的寬高應該用物理像素單位渲染。
即100*100
的圖片,應該使用100dp*100dp
.flexbox
例子:scala
在retina屏幕上渲染圖片,1px使用2dp或者3dp渲染。
解決方法:
border: 0.5px; /* 只有iOS8能夠用 */
rem = screen.width / 10
或者 rem = screen.width / 20
通常來說,font-size是不該該使用rem等相對單位的。應爲字體應該首先保證閱讀的實用性,其次纔是排版佈局。