近期學習,有很多感想,有時候看似相近的概念,其實意義卻不相同。所以學習要針對不同的名詞有明確的區分意識。
抽空時間,打算學習下display:flex;本以為就是一個小小的知識點,正式去研究的時候,才發現display:flex;有很多內容,能實現很多效果。比如三欄布局(左右兩欄固定,中間欄自適應),圣杯布局。
后來想著經常聽到流式布局,自適應布局,響應式布局,他們有什么區別呢,就去搜了許多內容查看,才發現每種布局都有優缺點和不同使用場景。
靜態布局:給頁面元素設置固定的寬度和高度,單位用px,當窗口縮小,會出現滾動條,拉動滾動條顯示被遮擋內容。針對不同分辨率的手機端,分別寫不同的樣式文件。
自適應布局:創建多個靜態布局,每個靜態布局對應一個屏幕分辨率范圍,使用@media媒體查詢技術。
流式布局:元素的寬高用百分比做單位,元素寬高按屏幕分辨率調整,布局不發生變化。屏幕尺度跨度過大的情況下,頁面不能正常顯示。
響應式布局:采用自適應布局和流式布局的綜合方式,為不同屏幕分辨率范圍創建流式布局。
彈性布局:要點在于使用<tt>em和rem單位</tt>來定義元素寬度,與流式布局有極大的相似性,但也有不同之處,主要區別在于彈性布局的尺寸主要根據字體大小而變化。
至于display:flex;相關知識,我就不贅述了,推薦阮一峰的博客http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
具體選擇哪種布局方式,要根據需求確定。