CSS 設(shè)計(jì)(一)

  1. box-sizing 屬性讓我們可以控制盒子模型尺寸的計(jì)算方式陶衅,它有兩個(gè)可選的值鳍置,分別是 content-boxborder-box.
  • border-box : 實(shí)際寬高 = 指定寬高
  • content-box : 實(shí)際寬高 = 指定寬高 + padding + border

對(duì)于兩個(gè)相同的盒子模型恤溶,它們的 CSS 代碼如下柏腻。
.box-1{
box-sizing: border-box;
width: 120px;
height: 120px;
border: 3px solid #000;
padding: 12px;
}

    .box-2{
        box-sizing: content-box;
        width: 120px;
        height: 120px;
        border: 3px solid #000;
        padding: 12px;
    }

它們的效果如下


demo01.png
  1. 當(dāng)提及布局的時(shí)候冯挎,我們會(huì)想到 display 屬性杀饵,它的三個(gè)可選值是我們不得不去關(guān)心的莽囤。
  • block : 寬度由父元素決定,高度由內(nèi)容決定切距。當(dāng)然也可以手動(dòng)設(shè)定元素的寬高朽缎。
  • inline : 寬度高度均由內(nèi)容決定,而且手動(dòng)指定的寬高也不起作用谜悟。
  • inline-block : 寬高均有內(nèi)容決定话肖,可以手動(dòng)設(shè)置寬高。

下面來測試一下 blockinline赌躺,CSS 代碼如下狼牺。

    .block{
        display: block;
        border: 1px solid #000;
        padding: 16px;
    }

    .inline{
        display: inline;
        border: 1px solid #000;
        padding: 16px;
    }

效果如下

demo02.png

從以上效果來看,我們可以總結(jié)兩點(diǎn)礼患。一是钥,對(duì)于設(shè)置為 block 的元素而言掠归,需要獨(dú)占一行。 二悄泥,設(shè)置為 inline 的元素雖然其 padding虏冻, border 都生效了,但是只有左右方向影響了其布局弹囚,而上下方向不影響實(shí)際布局厨相。

其實(shí),display 還有其它可選值鸥鹉,比如 table蛮穿,其實(shí)它和 inline-block 是類似的,不同的是它可以配合 table-cell 輕易的設(shè)置垂直居中效果毁渗。比如下面這樣践磅。
<div class="vertical-outer">
<div class="vertical-inner">Now, i'm in center.</div>
</div>

    .vertical-outer{
        width: 480px;
        height: 320px;
        display: table;
        background-color: rgba(102,102,102,.3);
        text-align: center;
    }

    .vertical-inner{
        display: table-cell;
        font-size: 24px;
        vertical-align: middle;
    }

效果如下

demo03.png

不利用這個(gè)屬性,我們當(dāng)然也有其它方式設(shè)置居中灸异,比如說 - 首先為元素設(shè)置 position 屬性府适,再為元素設(shè)置值相同的 topbottom, 然后指定元素的高度肺樟,最后將 margin-topmargin-bottom 的值設(shè)置為 auto檐春,這樣就可以達(dá)到垂直居中的效果。
.vertical-outer{
position: relative;
width: 480px;
height: 320px;
background-color: rgba(102,102,102,.3);
}

    .vertical-inner{
        width: 100%;
        height:20px;
        font-size: 24px;
        position: absolute;
        text-align: center;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
    }

既然提到了 position, 那么就順帶將 position 的可選值介紹一下么伯。一般來說疟暖,只要我們不將 position 的值設(shè)置為 static, 我們就可以稱元素是被擺放了位置的蹦狂,就可以為其指定 top, bottom, left, right誓篱。下面來看看 position 的可選值。

  • static : 默認(rèn)值凯楔。設(shè)置的 top, bottom, left, right 都會(huì)被忽略窜骄,也就是沒有任何效果。
  • absolute : 元素將從其原始布局位置刪除摆屯,并通過定位屬性相對(duì)于其最靠近的父位置定位邻遏。
  • fixed : 元素將從其原始布局位置刪除,并相對(duì)于窗口定位虐骑。
  • relative : 不同于 absolute 和 fixed, 元素保持在原始布局位置准验,而設(shè)置的 left, bottom, left, right 屬性只是將元素在原始位置進(jìn)行微調(diào)。
  1. 網(wǎng)頁設(shè)計(jì)中廷没,顏色是一個(gè)非常重要的工具糊饱,因?yàn)轭伾梢愿淖円粋€(gè)人的心情,從而改變其做出的一系列決定颠黎。所以另锋,我們需要掌握好顏色的使用滞项,適度的使用顏色。
    demo04.png

    很多人容易犯得一個(gè)錯(cuò)誤就是利用灰色(#ccc) 去代替一個(gè)具有透明度的黑色 (rgba(0,0,0,.2)) 夭坪。它們兩個(gè)看起來一樣文判,但是僅在背景為白色的時(shí)候!看看下面這個(gè)例子室梅。
    demo05.png

    在白色背景下戏仓,兩種效果確實(shí)看不出來明顯差異,但是一旦背景顏色不再為白色亡鼠,差異就十分明顯了赏殃。

瀏覽器重默認(rèn)的字體顏色是 #000, 我認(rèn)為這個(gè)顏色對(duì)所有人來說都是很直觀的拆宛,但是有些情況下我們用 #333 去代替它可能會(huì)有更好的效果嗓奢。為什么這么說呢?如果我們網(wǎng)頁的背景是純白色浑厚,而字體是純黑色,這種強(qiáng)烈的視覺對(duì)比效果可能產(chǎn)生視覺假象或眼睛疲勞根盒。還有一個(gè)更重要的原因是钳幅,我們可以將 #000 用來突出重點(diǎn)的內(nèi)容。

  1. 在網(wǎng)頁排版中炎滞,我們可能會(huì)經(jīng)常用 letter-spacingtext-align 屬性敢艰, 但是這兩個(gè)屬性之間的合作并不完美,因?yàn)殚g距被添加到每個(gè)字母的右邊册赛,這樣再利用 text-align 可能就不是完美居中了钠导,可以利用 padding-left 來彌補(bǔ)這一點(diǎn)。
    .example{
    background-image: -webkit-linear-gradient(top left, #723362, #9d223c);
    background-image: -o-linear-gradient(top left, #723362, #9d223c);
    background-image: linear-gradient(to bottom right, #723362, #9d223c);
    background-color: #9d223c;
    color: #fff;
    padding: 1em 0;
    font-weight: 300;
    font-size: 1.8em;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: .4em;
    padding-left: .4em
    }
    效果如下森瘪。

    demo06.png

    在網(wǎng)頁設(shè)計(jì)當(dāng)中牡属,我們可以通過改變相鄰文字的 font-weightfont-style 屬性達(dá)到突出的目的,比如說下面這樣扼睬。
    .example{
    width: 480px;
    height: 140px;
    margin: 50px auto;
    background-color: #fff;
    color: #000;
    font-size: 1.5em;
    border: 15px solid #000;
    text-align: center;
    padding-top: 2.8em;
    }

     .content{
         letter-spacing: .4em;
         padding-left: .4em;
         font-weight: 700;
         text-transform: uppercase;
     }
    
     .author{
         font-size: .7em;
         font-weight: 300;
         color: #888;
         font-style: italic;
         letter-spacing: .12em;
         padding-left: .12em;
     }
    
demo07.png

好了逮栅,本篇文章就到這里。如有疑問窗宇,可在下方留言或者與我私聊措伐。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市军俊,隨后出現(xiàn)的幾起案子侥加,更是在濱河造成了極大的恐慌,老刑警劉巖粪躬,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件担败,死亡現(xiàn)場離奇詭異昔穴,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)氢架,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門傻咖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人岖研,你說我怎么就攤上這事卿操。” “怎么了孙援?”我有些...
    開封第一講書人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵害淤,是天一觀的道長。 經(jīng)常有香客問我拓售,道長窥摄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任础淤,我火速辦了婚禮崭放,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鸽凶。我一直安慰自己币砂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開白布玻侥。 她就那樣靜靜地躺著决摧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪凑兰。 梳的紋絲不亂的頭發(fā)上掌桩,一...
    開封第一講書人閱讀 49,764評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音姑食,去河邊找鬼波岛。 笑死,一個(gè)胖子當(dāng)著我的面吹牛矢门,可吹牛的內(nèi)容都是我干的盆色。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼祟剔,長吁一口氣:“原來是場噩夢啊……” “哼隔躲!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起物延,我...
    開封第一講書人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤宣旱,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后叛薯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體浑吟,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡笙纤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了组力。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片省容。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖燎字,靈堂內(nèi)的尸體忽然破棺而出腥椒,到底是詐尸還是另有隱情,我是刑警寧澤候衍,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布笼蛛,位于F島的核電站,受9級(jí)特大地震影響蛉鹿,放射性物質(zhì)發(fā)生泄漏滨砍。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一妖异、第九天 我趴在偏房一處隱蔽的房頂上張望惋戏。 院中可真熱鬧,春花似錦他膳、人聲如沸日川。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至回论,卻和暖如春散罕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背傀蓉。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來泰國打工欧漱, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人葬燎。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓误甚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親谱净。 傳聞我的和親對(duì)象是個(gè)殘疾皇子窑邦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,737評(píng)論 1 92
  • 1壕探、垂直對(duì)齊 如果你用CSS冈钦,則你會(huì)有困惑:我該怎么垂直對(duì)齊容器中的元素?現(xiàn)在李请,利用CSS3的Transform瞧筛,...
    kiddings閱讀 3,152評(píng)論 0 11
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color厉熟,font,text-align较幌,li...
    wzhiq896閱讀 1,732評(píng)論 0 2
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color揍瑟,font,text-align乍炉,li...
    love2013閱讀 2,304評(píng)論 0 11
  • 文:松塔 “若真的有來生……別在夕陽里對(duì)我笑,別對(duì)我細(xì)聲說話衷恭,別送我水紅色的蓮花此叠,別把我留在身邊,別陪我...
    蹦跶的松塔閱讀 1,190評(píng)論 1 4