淘寶新旺鋪寶貝推薦模塊CSS定義詳解


寶貝推薦模塊CSS定義規范一(我一直采用less的方式寫CSS,覺得這樣很方便)

寶貝推薦模塊的基本結構如下

.tshop-pbsm-shop-item-recommend {
    //模塊頂部
    .skin-box-tp  {}
    
    //模塊標題
    .skin-box-hd {}
    
    //模塊主體
    .skin-box-bd {}
    
    //模塊結尾
    .skin-box-bt {}
}

 

一般,為了保持每個模塊的標題統一,可以將 .skin-box-tp和.skin-box-hd及.skin-box-bt的樣式預定義在common.less中。假設在common.less中他們分別對應.mk-tp, .mk-hd, .mk-bt,那么,接下來用下面的代碼定義模塊的頂部、標題、尾部(如果想獨特一點,那么就單獨定義)

.tshop-pbsm-shop-item-recommend {
    .skin-box-tp {
        .mk-bt;
    }
    .skin-box-hd {
        .mk-hd;
    }
    .skin-box-bt {
        .mk-bt;
    }
}

 

接下來,我要定義該模塊在不同布局中的樣式。

前提分析:

1、在新旺鋪中,CSS只允許定義在模塊之內,沒有公共CSS這么一說。也就是說我們寫的CSS代碼只能以.tshop-pbsm-shop-item-recommend開頭。

2、定義在所有布局中寶貝推薦模塊的公用樣式,用如下的方法:

.tshop-pbsm-shop-item-recommend .skin-box-bd .item {
 //這里定義寶貝的公用樣式
 //具體可以參考最后面附上的完整寶貝推薦模塊的結構
}

3、定義不同布局中的特殊樣式

新旺鋪中寶貝推薦模塊的布局擁有如下幾種形式:

.item3line1:每行3個寶貝,可存在950/750布局中。

.item4line1:每行4個寶貝,可存在950/750布局中。

.item5line1:每行5個寶貝,可存在950/750布局中。

.item7line1:每行7個寶貝,只存在950布局中。

.item30line1:每行3個寶貝,只存在750布局中。

.item1line1:每行1個寶貝,只存在190布局中。

現在的問題是:

item3line1、item4line1、item5line1他們是適應在950/750之中的。但是在不同的布局中,每個寶貝占的寬度是不一樣的。如何才能讓定義的樣式兼容750/950布局呢?方法是:在修改這些寶貝排列方式的時候,.item及其子元素不能指定寬度,否則可能產生不能兼容950/750的情況。

 

最后附上一個完整的寶貝推薦模塊的CSS結構定義

.skin-box-bd {
    //行樣式
    div.item3line1, div.item4line1 {
        dl.item {    //每行的最后一個為 dl.item.last
            //寶貝圖片
            dt.photo {}
            
            //寶貝詳情
            dd.detail {
                //寶貝屬性
                div.attribute {
                    //寶貝原價
                    div.cprice-area {
                        span.c-price { //只影響價格的數字樣式}
                    }
                    //寶貝銷量
                    div.sale-area {
                        span.sale-num { //只影響銷量數字 }
                    }
                }
                //寶貝名字
                a.item-name {}
            }
            
            //寶貝評論
            dd.rates {
                //評論數與更多評論
                div.title {
                    //評論數量展示
                    h4 {
                        span { //數量 }
                    }
                    //更多評論鏈接
                    a {}
                }
                
                //最新評論
                p.rate {}
            }
        }
    }
}

注意:當每行顯示5、7個寶貝是,不顯示銷售筆數,不顯示評論、不顯示評論數。由於店鋪沒有設置打折,所以上面的代碼中並沒有提選出折扣價的部分。


總結:寶貝推薦模塊是考驗一個設計師寫CSS能力的模塊,在這里可能還存在更好的編寫方式,待日后慢慢發現。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM