04_CSS行高、盒子模型

CSS中的居中對齊

  • 內(nèi)容居中對齊:text-align:center
  • 盒子居中對齊:margin:0 auto;

行高

  • 瀏覽器默認文字大腥岜啤:16px
    行高:是基線與基線之間的距離

行高=文字高度+上下邊距

注意:一行文字行高和父元素高度一致的時候挟裂,垂直居中顯示享钞。

  • 行高的單位
行高單位 文字大小
20px 20px 20px
2em 20px 40px
150% 20px 30px
2 20px 40px

總結(jié):單位除了像素以為,行高都是與文字大小乘積诀蓉。

父行高單位 父元素文字大小 子元素文字大小 子行高
40px 20px 30px 40px
2em 20px 30px 40px
150% 20px 30px 30px
2 20px 30px 60px

總結(jié):
  上節(jié)已經(jīng)講過:行高大小會被繼承
  不帶單位時栗竖,行高是和子元素文字大小相乘,em和%的行高是和父元素文字大小相乘渠啤。行高以像素為單位狐肢,就是定義的行高值。
推薦行高使用像素為單位沥曹。

盒子模型

邊框 border
  • Border-top-style:
      solid 實線
      dotted 點線
      dashed 虛線
  • Border-top-color 邊框顏色
  • Border-top-width 邊框粗細
        .box{
            width: 300px;
            height: 390px;
            background: #999;
            border-top-style: solid;    /*邊框線型*/
            border-top-color: red;      /*邊框顏色*/

            border-bottom-style: dotted;
            border-bottom-color: green;
            
            border-left-color: yellow;
            border-left-style: dashed;
            border-left-width: 10px;
        }
  • 邊框?qū)傩缘倪B寫
    特點:沒有順序要求份名,線型為必寫項碟联。
border-right: blue solid 5px;
  • 四個邊框值相同的寫法
border: blue solid 5px;

特點:沒有順序要求,線型為必寫項僵腺。

邊框合并

border-collapse:collapse;

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        table{
            width: 500px;
            height: 300px;
            border:red solid 1px;
            border-collapse: collapse;
        }
        td{
            border:red solid 1px;

        }
    </style>
</head>
<body>
    <table cellspacing="0">
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </table>
</body>
</html>
邊框合并鲤孵,細線表格
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .username{
            border:0 none;
            outline-style: none;/*去掉輪廓線,輪廓線就是當輸入框獲得焦點時的邊框線 */
            background: #eeccee;
            border: 1px dashed green;
        }
        .username:focus{
            background: #ddeedd;
        }
        .email{
            border: 0 none;
            outline-style: none;
            border-bottom:  1px dotted red;
        }
        .search{
            border: 0 none;
            outline-style: none;
            border:1px solid #999;
            background: url('search.png') no-repeat right;
        }
    </style>
</head>
<body>
    <label for="myuser">用戶名:</label><input type="text" class="username" id="myuser"><br/>
    郵箱:<input type="text" class="email"><br/>
    搜索一下:<input type="text" class="search">
</body>
</html>

特別注意:
  獲取焦點
  輪廓線
  取消邊框的兼容性好的寫法
  label for id的用法

內(nèi)邊距

padding-left | right | top | bottom

    .box{
            padding-left: 10px;
            padding-right: 20px;
            padding-top: 30xp;
            padding-bottom: 50px;
        }
  • padding連寫

  • padding: 20px; 上右下左內(nèi)邊距都是20px

  • padding: 20px 30px; 上下20px 左右30px

  • padding: 20px 30px 40px; 上內(nèi)邊距為20px 左右內(nèi)邊距為30px 下內(nèi)邊距為40

  • padding: 20px 30px 40px 50px; 上20px 右30px 下40px 左 50px

  • 內(nèi)邊距撐大盒子的問題
    影響盒子寬度或高度的因素:
      內(nèi)邊距影響盒子的寬度或高度
      邊框影響盒子的寬度或高度

盒子的寬度=定義的寬度+邊框?qū)挾?左右內(nèi)邊距

提問:

一個大盒子寬度500px,高度300px.一個小盒子寬度300px,高度150px.請畫出讓小盒子在大盒子內(nèi)部居中辰如。

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .min{
            width: 300px;
            height: 150px;
            background: #eeffee;
        }
        .box{
            width: 300px;
            height: 150px;
            padding-left: 100px;
            padding-top: 75px;
            padding-bottom: 75px;
            padding-right: 100px;
            background: #ffeeff;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="min"></div>
    </div>
</body>
</html>
  • 繼承的盒子一般不會被撐大
    包含(嵌套)的盒子普监,如果子盒子沒有定義寬度,給子盒子設(shè)置左右內(nèi)邊距丧没,一般不會撐大盒子鹰椒。(水平方向不會被撐大,垂直方向會)
練習
  • 新浪導航條
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .nav{
            height: 40px;
            background: #eee;
            border-top: 3px orange solid;
            border-bottom:1px solid #aaa;
        }
        .nav-con{
            width: 1000px;
            /*background: #aaa;*/
            height: 100%;
            margin 0 auto;
            
        }
        a{
            font:12px 微軟雅黑;
            color: #444;
            display: inline-block;
            height: 40px;
            text-decoration: none;
            line-height: 40px;
            padding: 0 12px;
        }
        a:hover{
            background: #bbb;
        }
    </style>
</head>
<body>
    <div class="nav">
        <div class="nav-con">
            <a href="#">設(shè)為首頁</a>
            <a href="#">手機新浪網(wǎng)</a>
            <a href="#">移動客戶端</a>
        </div>
    </div>
</body>
</html>
外邊距

margin-left | right | top | bottom

  • 外邊距連寫
  • margin: 20px; 上下左右外邊距20PX
  • margin: 20px 30px; 上下20px 左右30px
  • margin: 20px 30px 40px; 上20px 左右30px 下 40px
  • margin: 20px 30px 40px 50px; 上20px 右30px 下40px 左50px
  • 垂直方向外邊距合并
    垂直方向的兩個盒子一個設(shè)置上外邊距呕童,一個設(shè)置下外邊距漆际,取的設(shè)置較大的值。
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .one{
            width: 200px;
            height: 200px;
            background: orange;
            margin-bottom: 20px;
        }
        .two{
            width: 200px;
            height: 180px;
            background: yellow;
            margin-top: 50px;
        }
    </style>
</head>
<body>
    <div class="one"></div>
    <div class="two"></div>
</body>
</html>

1. 實踐上上面兩個盒子垂直方向間距只有50px;因為瀏覽器做了優(yōu)化夺饲。
  2. 邊距合并問題只發(fā)生在塊級元素之間

  • 嵌套的盒子外邊距塌陷
    嵌套的盒子奸汇,直接給子盒子設(shè)置處置方向外邊距的時候,會發(fā)生外邊距塌陷
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .father{
            width: 300px;
            height: 300px;
            background: pink;
        }
        .son{
            width: 100px;
            height: 100px;
            background: yellow;
            margin-top: 80px;
        }
    </style>
</head>
<body>
    <div class="father">
        <div class="son"></div>
    </div>
</body>
</html>
外邊距塌陷

解決方法:
  1 給父盒子設(shè)置邊框
  2 給父盒子overflow:hidden;
   bfc 格式化上下文

行內(nèi)元素可以定義左右的內(nèi)外邊距往声,上下會被忽略掉擂找。
行內(nèi)塊可以定義內(nèi)外邊距

Fireworks的基本使用

新建文件 ctrl+n
打開文件 ctrl+o
調(diào)出和隱藏標尺 ctrl+r
清除輔助線: 視圖---輔助線----清除輔助線
放大鏡 z 放大鏡狀態(tài)下alt+鼠標左鍵 縮小
抓手 快捷鍵 空格
測量距離:
  ★先拉出2根輔助線
  ★切換到指針工具
  ★將光標放到2根輔助線之間,按住shift鍵

練習
  • 行業(yè)動態(tài)


<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        .news{
            width: 238px;
            height: 166px;
            border: 1px solid #D9E0EE;
            border-top: 3px solid #FF8400;
            margin: 0 auto;
        }
        .news-title{
            height: 35px;
            line-height: 35px;
            padding-left: 12px;
            border-bottom: 1px solid #D9E0EE;
        }
        ul,li{
            list-style: none;
            margin: 0;
            padding: 0;
        }
        ul{
            margin-top: 8px;
        }
        li{
            padding-left: 19px;
            background: url('li_bg.jpg') no-repeat 9px 11px;
            line-height: 23px;
            font-size: 13px;
        }
        a{
            text-decoration: none;
        }
        a:link{
            color: #666;
        }
        a:hover{
            color: blue;
        }
    </style>
</head>
<body>
    <div class="news">
        <div class="news-title">行業(yè)動態(tài)</div>
        <ul>
            <li><a href="#">這就是行業(yè)內(nèi)的動態(tài)</a></li>
            <li><a href="#">這就是行業(yè)內(nèi)的動態(tài)</a></li>
            <li><a href="#">這就是行業(yè)內(nèi)的動態(tài)</a></li>
            <li><a href="#">這就是行業(yè)內(nèi)的動態(tài)</a></li>
            <li><a href="#">這就是行業(yè)內(nèi)的動態(tài)</a></li>
        </ul>
    </div>
</body>
</html>
  • 愛寵知識


<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        body , ul , li{
            margin: 0;
            padding: 0;
        }
        .content{
            width: 260px;
            height: 327px;
            margin: 0 auto;
            border:  1px solid #009900;
            background: url('bg.gif');
        }
        .content .title{
            height: 23px;
            margin: 10px 0px 5px 10px;
            border-left: 4px solid #C9E143;
            font: 16px 微軟雅黑;
            padding-left: 11px;
            color: #fff;
        }
        ul{
            background: #fff;
            /*height: 279px;*/
            margin-left: 10px;
            margin-right: 10px;
        }
        ul,li{
            list-style: none;
        }
        li{
            height: 30px;
            border-bottom: 1px dashed #999;
            margin:0 10px;
            background: url('tb.gif') no-repeat left center;
            padding-left: 16px;
        }
        li a{
            line-height: 31px;
            text-decoration: none;
            color: #0066CC;
        }

    </style>
</head>
<body>
    <div class="content">
        <div class="title">愛寵知識</div>
        <ul>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
            <li><a href="#">其實養(yǎng)貓比養(yǎng)狗咬好的多</a></li>
        </ul>
    </div>
</body>
</html>
  • 個人資料


<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        /*body{
            margin: 0;
            padding:0;
        }*/
        .content{
            width: 208px;
            height: 384px;
            margin: 0 auto;
            border:1px solid #CECECE;
        }
        .title{
            background: #ECEDEE;
            padding-left: 9px;
            height: 25px;
            font:12px/25px 微軟雅黑;
            color: #686868;
        }
        .content .pic{
            width: 180px;
            height: 180px;
            border: 1px solid #CECECE ;
            margin:10px 0px 11px 13px;
        }
        .content .blink{
            height: 31px;
            text-align: center;
            font-size: 14px;
            color: #9090AA;
        }
        .content .blink img{
            margin-left: 10px;
        }
        .content .weibo{
            height: 38px;
            text-align: center;
            border-bottom: 2px dotted #D1D1D1;
            margin:0px 14px 15px 13px;
        }
        .content .weibo input{
            background: #EEEEF2 url('vb.jpg') no-repeat 2px center;
            width: 69px;
            height: 23px;
        }
        .content .friend{
            text-align: center;
            margin-left: 13px;
            margin-right: 14px;
            /*border-bottom: 1px dotted #D1D1D1;*/
        }
        .content .friend input{
            width: 69px;
            height: 23px;
            margin-bottom: 5px;

        }
    </style>
</head>
<body>
    <div class="content">
        <div class="title">
            個人資料
        </div>
        <div class="pic">
            ![](1.jpg)
        </div>
        <div class="blink">
            V閃閃
            ![](v.jpg)
        </div>
        <div class="weibo">
            <input type="button" value="微博">
        </div>
        <div class="friend">
            <input type="button" name="" value="加好友">
            <input type="button" name="" value="發(fā)紙條">
            <input type="button" name="" value="寫留言">
            <input type="button" name="" value="加關(guān)注">
        </div>
    </div>
</body>
</html>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末浩销,一起剝皮案震驚了整個濱河市贯涎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌慢洋,老刑警劉巖塘雳,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異普筹,居然都是意外死亡败明,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門太防,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妻顶,“玉大人,你說我怎么就攤上這事蜒车』渲觯” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵酿愧,是天一觀的道長呢燥。 經(jīng)常有香客問我,道長寓娩,這世上最難降的妖魔是什么叛氨? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任呼渣,我火速辦了婚禮,結(jié)果婚禮上寞埠,老公的妹妹穿的比我還像新娘屁置。我一直安慰自己,他們只是感情好仁连,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布蓝角。 她就那樣靜靜地躺著,像睡著了一般饭冬。 火紅的嫁衣襯著肌膚如雪使鹅。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天昌抠,我揣著相機與錄音患朱,去河邊找鬼。 笑死炊苫,一個胖子當著我的面吹牛裁厅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播侨艾,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼执虹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了唠梨?” 一聲冷哼從身側(cè)響起袋励,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎当叭,沒想到半個月后插龄,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡科展,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了糠雨。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片才睹。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖甘邀,靈堂內(nèi)的尸體忽然破棺而出琅攘,到底是詐尸還是另有隱情,我是刑警寧澤松邪,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布坞琴,位于F島的核電站,受9級特大地震影響逗抑,放射性物質(zhì)發(fā)生泄漏剧辐。R本人自食惡果不足惜寒亥,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望荧关。 院中可真熱鬧溉奕,春花似錦、人聲如沸忍啤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽同波。三九已至鳄梅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間未檩,已是汗流浹背戴尸。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留讹挎,地道東北人校赤。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像筒溃,于是被迫代替她去往敵國和親马篮。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

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