亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 網頁設計 > 正文

多欄自適應布局問題淺談

2024-08-30 08:36:53
字體:
來源:轉載
供稿:網友

在網頁局部的布局上,需要采用大量的自適應,來滿足不同長度數據、內容的合理呈現。以此保證頁面不至于因為內容過多等原因,導致重疊、溢出、撐開等破壞整體視覺效果的情況。這里就簡單談談幾個自己碰到過的自適應問題。

1、兩欄自適應布局

在實際項目中,常常遇到如紅色線框部分的兩欄自適應問題。其關鍵點是,左右兩欄均不定寬,右側欄條目數量不定。

針對這種場景,可以采用兩欄均浮動的方法。參考 Object-oriented CSS 中應用到的布局方案,則需要套用兩層標簽實現,兩欄中一欄浮動,另一欄寬度自適應:

.wrap{background:gray;}
.left{float:left;background:orange;}
.right{ display:table-cell;_display:block;zoom:1;background:lime;}
<div class="wrap">
  <div class="left">左側欄</div>
  <div class="right">右側欄</div>
</div>

點此查看該代碼示例:two_column_layout.html
由于IE6并不支持 display:table-cell 屬性,必須通過 CSS hack 來彌補這個缺陷。這里可以稍作改進,右側欄直接設定 overflow:auto;zoom:1 或者 overflow:hidden;zoom:1 的樣式。

2、三欄自適應布局

談到三欄自適應布局,這應該是最為基本的網頁排版形式了。以Amazon首頁來說,其自適應布局采用的是與Object-oriented CSS相類似的方案:

.wrap{background:gray;}
.left{float:left;width:250px;background:red;}
.right{float:right;width:300px;background:orange;}
.main{overflow:hidden;zoom:1;background:lime;}
<div class="wrap">
  <div class="left">左側欄</div>
  <div class="right">右側欄</div>
  <div class="main">主體部分</div>
</div>

點此查看該代碼示例:three_column_layout.html
該案例中,左右側欄分別浮動,主體部分(中間欄)溢出隱藏。這種布局的好處在于,無論外框寬度如何變化,主體部分總能自適應。但從頁面結構上來說,節點物理順序和視覺邏輯順序不一致,最關鍵的主體部分內容被排在整個文檔的后面,主次分布不合理,總覺得有一些遺憾。另外也會存在一些潛在的風險:如果右側欄包含大量腳本資源,可能會影響甚至阻塞整個頁面的載入(如果選擇使用 iframe或者 ajax 來加載就另當別論)。

眾所周知,HTML文檔是順序解析的。在這張使用 WebPageTest 對 Amazon 首頁渲染過程的某一時刻截圖中,可以發現左右兩側的內容率先予以呈現,而主體部分會造成一定時間的空白。因此這種方案并不宜用于整站頁面框架的搭建。

考慮到頁面結構的復雜程度和體積大小,大型站點的布局方案,個人傾向于采用諸如負邊距之類自適應布局。實現原理可以參考《Creating Liquid Layouts with Negative Margins》這篇文章。利用負邊距可以構建出很多復雜的流體布局形式。這里以 YUI 框架提供的柵格方案為例來說明:

.wrap{}.section{float:left;margin-right:-40em;width:100%;}
.g1{margin-right:310px;float:none;width:auto;position:static;}
.g2{float:right;margin-left:-40em;width:100%;}
.main{margin-left:210px;float:none;width:auto;position:static;overflow:auto;background:red;}
.left{float:left;width:200px;position:relative;background:orange;}
.aside{float:right;width:300px;position:relative;background:lime;}<div class="wrap">
  <div class="section">
    <div class="g1">
      <div class="g2">
        <div class="main">主體部分</div>
      </div>
      <div class="left">左側欄</div>
    </div>
  </div>
  <div class="aside">右側欄</div>
</div>

點此查看該代碼示例:negative_margin_layout.html
雖然實現上要比其他方案更為復雜,需要嵌套多層標簽,在一定程度上有失 HTML 文檔的簡潔性。但一個重要的好處是,其各個區塊(左側欄、主體部分、右側欄)文檔結構順序可以隨意調換,而在視覺呈現上卻沒有任何差異。目前口碑網的前端布局系統正是應用了這種解決方案,并有專用工具實現布局框架的自動化生成。

3、自適應柵格化布局

Object-oriented CSS 提出了一種結構化的多欄自適應布局,利用柵格控制容器寬度,內容控制容器高度。使得多層嵌套的自適應柵格化布局清晰明了。如果應用到類似表格的頁面排版,這種方法行之有效。詳細參考自適應柵格化布局代碼示例:grid_layout.html
而目前大量的網站正在使用 950px/960px 寬度的柵格系統,固定最小柵格單元的寬度,保證整體結構的合理、穩定和一致。與其相比,在局部頁面布局中,建議使用 Object-oriented CSS 這種簡潔的、基于百分比的柵格方案。如果可以保證內部所有區塊自適應,就只需要對最外層容器設定寬度,顯得更為靈活。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩在线看片| 亚洲综合av影视| 成人淫片在线看| 国产成人欧美在线观看| 亚洲成人1234| 国产成+人+综合+亚洲欧洲| 亚洲国产精品成人精品| 日韩在线欧美在线国产在线| 日韩av一区在线观看| 国产999视频| 中文字幕精品网| 欧美日韩性生活视频| 美女精品久久久| 欧美日韩成人网| 91性高湖久久久久久久久_久久99| 久久这里有精品视频| 国产精品一区二区久久国产| 伊人久久五月天| 久久精品青青大伊人av| 精品久久在线播放| 久热99视频在线观看| 热久久这里只有精品| 国产网站欧美日韩免费精品在线观看| 中文字幕亚洲欧美一区二区三区| 91亚洲永久免费精品| 久久久国产成人精品| 欧美肥臀大乳一区二区免费视频| 欧美激情免费看| xxxxx成人.com| 一区二区三区动漫| 日韩av三级在线观看| 亚洲国产精品va在线观看黑人| 欧美一区二区大胆人体摄影专业网站| 亚洲自拍偷拍第一页| 大胆欧美人体视频| 中文字幕一精品亚洲无线一区| 国产97在线亚洲| 欧美丝袜美女中出在线| 国产精品久久久久7777婷婷| 富二代精品短视频| 91色视频在线观看| 午夜美女久久久久爽久久| 欧美精品日韩www.p站| 欧美日韩一区二区在线| 亚洲男人第一av网站| 亚洲一区二区久久| 国产精品视频自拍| 久久久综合av| 欧美超级免费视 在线| 欧美午夜片欧美片在线观看| 亚洲国产成人爱av在线播放| 91色在线观看| 国产精品电影观看| 国产精品久久久久影院日本| 欧美怡春院一区二区三区| 国产激情久久久久| 日韩在线一区二区三区免费视频| 亚洲最大激情中文字幕| 亚洲第一色在线| 日韩中文在线视频| 欧美日韩激情视频8区| 91久久嫩草影院一区二区| 中文字幕成人精品久久不卡| 91精品国产色综合| 国内伊人久久久久久网站视频| 国产成人精品久久亚洲高清不卡| 精品久久中文字幕| 精品视频一区在线视频| 日韩久久精品成人| 日韩69视频在线观看| 97视频在线观看网址| 精品久久久999| 亚洲男人天堂手机在线| 亚洲自拍在线观看| 日韩精品www| 亚洲免费一级电影| 午夜精品久久久久久久久久久久| 97在线精品视频| 国产精品欧美在线| 欧美日韩午夜剧场| 国产精品视频色| 日韩中文字幕网| 久久久久久国产精品| 久久成人亚洲精品| 日韩av在线高清| 久久久精品一区| 在线观看国产精品淫| 久久久久久中文| 国产精品精品视频一区二区三区| 韩国福利视频一区| 91沈先生在线观看| 久久亚洲精品毛片| 欧美自拍大量在线观看| 青青草成人在线| 国产精品免费在线免费| 精品久久久久久久大神国产| 欧美日韩日本国产| 韩国19禁主播vip福利视频| 日韩中文字幕在线视频播放| 1769国内精品视频在线播放| 久久久久国产一区二区三区| 国内精品模特av私拍在线观看| 热门国产精品亚洲第一区在线| 九九热这里只有精品6| 久久久久免费视频| 国产精品草莓在线免费观看| 久久精品国产亚洲精品| 中文字幕国产亚洲| 91成人精品网站| 亚洲国产精品大全| 日韩亚洲精品电影| 青青草精品毛片| 亚洲性无码av在线| 色综合亚洲精品激情狠狠| 97激碰免费视频| 97免费中文视频在线观看| 黑人精品xxx一区| 91久久久久久久| 国模精品视频一区二区三区| 久久艳片www.17c.com| 欧美日韩视频在线| 欧美性jizz18性欧美| 午夜欧美大片免费观看| 日韩有码在线视频| 国产亚洲精品美女久久久| 欧美日韩国产影院| 久久久久久久久久久亚洲| 亚洲精品视频网上网址在线观看| 一本色道久久88综合日韩精品| 成人久久久久爱| 久久人人97超碰精品888| 欧美电影在线免费观看网站| 国产区精品视频| 狠狠做深爱婷婷久久综合一区| 国产精品福利在线| 日韩中文字幕网| 久久精品视频亚洲| 欧美成人精品h版在线观看| 久久视频免费观看| 91免费视频国产| 日韩69视频在线观看| 中文字幕日韩av| 日韩精品视频在线免费观看| 精品国内产的精品视频在线观看| 色偷偷9999www| 亚洲欧美日韩久久久久久| 久久久伊人日本| 亚洲天堂男人天堂女人天堂| 性日韩欧美在线视频| 欧美诱惑福利视频| 国产精品69久久| 国产成人精品a视频一区www| 在线亚洲午夜片av大片| 97视频免费在线观看| 国产精品一区二区三区久久| 国产有码在线一区二区视频| 狠狠久久五月精品中文字幕| 国产精品久久久久av| 欧美色videos| 韩国v欧美v日本v亚洲| 欧美日韩精品在线视频| 91精品国产高清久久久久久| 国产成人精品免高潮费视频| 亚洲一区二区三区sesese|