国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

我就是要用CSS實現(xiàn)九宮格圖

2024-07-11 08:33:18
字體:
供稿:網(wǎng)友

下圖是手Q吃喝玩樂  好友去哪兒九宮格圖的圖示:

 

從上圖我們可以分析出如下需求:

圖片大小自適應;
圖片個數(shù)不同時,圖片按照指定方式排列;
圖片相鄰處有1px空白間隙。

我們以最復雜的6圖布局為例,一步一步來看如何以純CSS實現(xiàn)。

1、float布局

最容易想到的,也是最簡單的方案,就是 float 布局:

圖片大小自適應:寬度百分比,高度使用 padding-top 百分比
圖片個數(shù)不同時,圖片按照指定方式排列:使用 nth-child 偽類指定不同情況下的元素大小
圖片相鄰處有1px空白間隙:使用 border-box + border模擬邊框

這里父元素的高度未知,height使用百分比行不通,而padding的百分比值是依據(jù)父元素的寬度來計算的,我們可以使用padding-top撐開高度。

讓我們一瞅偽碼:

XHTML

XML/HTML Code復制內(nèi)容到剪貼板
  1. <div class="float">       <div class="item">1</div>  
  2.     ...        <div class="item">6</div>  
  3. </div>  

 CSS

CSS Code復制內(nèi)容到剪貼板
  1. .float {        overflow: hidden;   
  2. }    .item {   
  3.     float: left;        padding-top: 33.3%;   
  4.     width: 33.3%;        border-right: 1px solid #fff;   
  5.     border-top: 1px solid #fff;    }   
  6. .item:nth-child(1) {        padding-top: 66.6%;   
  7.     width: 66.6%;    }   
  8. .item:nth-child(2), .item:nth-child(3), .item:nth-child(6) {        border-right: 0 none;   
  9. }    .item:nth-child(1), .item:nth-child(2) {   
  10.     border-top: 0 none;    }    

實際效果并不理想,如下圖:

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄浦区| 阜康市| 安陆市| 容城县| 莱芜市| 许昌县| 阜阳市| 汉寿县| 洪雅县| 镇原县| 清苑县| 汉中市| 桦川县| 临沭县| 平乡县| 白朗县| 墨竹工卡县| 云南省| 石屏县| 茌平县| 剑川县| 上栗县| 华池县| 东乡| 开原市| 子洲县| 巩留县| 迁西县| 顺平县| 贵德县| 沙湾县| 边坝县| 平谷区| 镇坪县| 正阳县| 新昌县| 延津县| 西和县| 泸水县| 化隆| 武山县|