CSS布局(Display琼牧、Position、Overflow哀卫、Float)

布局說明

image.png

基本布局屬性

Display(顯示)

display屬性設(shè)置一個元素應(yīng)如何顯示巨坊。
display:none可以隱藏某個元素,且隱藏的元素不會占用任何空間。也就是說此改,該元素不但被隱藏了趾撵,而且該元素原本占用的空間也會從頁面布局中消失
display:block-顯示為塊級元素
display:inline-顯示為內(nèi)聯(lián)元素
display:inline-block-顯示為內(nèi)聯(lián)塊元素,表現(xiàn)為同行顯示并可修改寬高內(nèi)邊距等屬性

Visibility(可見)

visibility屬性指定一個元素應(yīng)可見還是隱藏
visibility:hidden可以隱藏某個元素带斑,但隱藏的元素仍需占用與未隱藏之前一樣的空間鼓寺。也就是說,該元素雖然被隱藏了勋磕,但仍然會影響布局。
visibility:collape一般的元素的表現(xiàn)與visibility:hidden一樣敢靡,也即其會占用空間挂滓。但如果該元素是與table相關(guān)的元素,列如table row啸胧、table column赶站、table column group幔虏、table column group等,其表現(xiàn)卻跟display:none一樣贝椿,也即其占用的空間會釋放想括。

Position(定位)

position屬性指定了元素的定位類型
1、staticHTML元素的默認值烙博,即沒有定位瑟蜈,遵循正常的文檔流對象
2、fixed固定定位元素的位置相對于瀏覽器窗口是固定位置
1渣窜、Fixed定位使元素的位置與文檔流無關(guān)铺根,因此不占據(jù)空間
2、Fixed定位的元素和其它元素重疊

// 右上角顯示
p.pos_fixed
{
    position:fixed;
    top:30px;
    right:5px;
}

3乔宿、relative相對定位元素的定位時相對其正常位置
1位迂、移動相對定位元素,但它原本所占的空間不會改變

// 從元素的原始左側(cè)位置減去 20 像素详瑞。(左移20px)
h2.pos_left
{
   position:relative;
   left:-20px;
}

4掂林、absolute絕對定位的元素的位置相對于最近的已定位父元素,如果元素沒有已定位的父元素坝橡,那么它的位置相對于html
1泻帮、absolute定位使元素的位置與文檔流無關(guān),因此不占據(jù)空間
2刑顺、absolute定位的元素和其它元素重疊
5、sticky粘性定位基于用戶的滾動位置來定位
1饲常、粘性定位的元素是依賴于用戶的滾動,在postion:relative與position:fixed定位之間切換贝淤。它的行為就像position:relative;而當(dāng)頁面滾動超出目標(biāo)區(qū)域時,它的表現(xiàn)就像position:fixed播聪;它會固定在目標(biāo)位置

// Top為0 的時候固定在那
div.sticky {
    position: -webkit-sticky; /* Safari */
    position: sticky;
    top: 0;
    background-color: green;
    border: 2px solid #4CAF50;
}

Overflow(溢出)

overflow屬性規(guī)定當(dāng)內(nèi)容溢出元素框時發(fā)生的事情
注意:overflow屬性值工作于指定高度塊元素
1朽基、visible內(nèi)容不會被修剪,會呈現(xiàn)在元素框之外(默認值)
2离陶、hidden內(nèi)容會被修剪,并且其余內(nèi)容是不可見的
3招刨、 scroll內(nèi)容會被修剪霎俩,但是瀏覽器會顯示滾動條以便查看其余的內(nèi)容
4、auto如果內(nèi)容被修剪打却,則瀏覽器會顯示滾動條以便查看其余的內(nèi)容

Float(浮動)

float會使元素向左或向右移動杉适,其周圍的元素也會重新排列。往往是用于圖像柳击,但它在布局時一樣非常有用猿推。使元素的位置與文檔流無關(guān)捌肴,因為不占據(jù)空間

// 圖片浮動顯示
.image-list {
    float:left;
    margin:5px
  }

Clear(清除浮動)

clear屬性指定元素兩側(cè)不能出現(xiàn)浮動元素
元素浮動后蹬叭,周圍的元素會重新排列哭靖,為了避免這種情況,使用clear屬性

// text_line 元素左右兩邊不能出現(xiàn)浮動元素
.text_line
{
    clear:both;
}

z-index(順序)

z-index設(shè)置元素的堆疊順序
可定義為一個值(整數(shù)數(shù)字),越大代表越置前试幽,如可定義為:z-index:9999筝蚕。若定義為-1铺坞,代表為最底層

flex布局 & grid布局

圣杯布局 & 雙飛翼布局

左右兩欄固定寬度,中間部分自適應(yīng)的三欄布局柠衍,其原理差不多洋满,都有負邊距的應(yīng)用珍坊,就是middle的實現(xiàn)不一樣。
關(guān)于負邊距的理解: https://www.cnblogs.com/2050/archive/2012/08/13/2636467.html.

  • 圣杯布局
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>Test</title> 
<style>
        .header {
            width: 100%;
            height: 30px;
            background: red;
        }

        .content {
            overflow: hidden;
            padding: 0 100px;
        }

        .footer {
            width: 100%;
            height: 30px;
            background: red;
        }

        .middle {
            position:relative;          
            width: 100%;
            float: left;
            height: 80px;
            background: green;
        }

        .left {
            position:relative;
            width: 100px;
            float: left;
            left:-100px;
            height: 80px;
            margin-left: -100%;
            background: yellow;
        }

        .right {
            position:relative;          
            width: 100px;
            float: left;
            right:-100px;
            height: 80px;
            margin-left: -100px;
            background: pink
        }

</style>
</head>

<body>
        <div class="header">header-start header header header header header header-end</div>
        <div class="content">
            <div class="middle"> middle-start middle middle middle middle middle middle middle middle middle middle middle-end </div>
            <div class="left">left-start left left left left left left left left left left left left left left left-end </div>
            <div class="right"> right-start right-end</div>
        </div>
        <div class="footer"></div>
</body>
</html>
image.png
  • 雙飛翼布局
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>Test</title>
<style>
.header {
        width: 100%;
        height: 30px;
        background: red;
    }

    .content {
        overflow: hidden;
    }

    .footer {
        width: 100%;
        height: 30px;
        background: red;
    }

    .middle {           
        width: 100%;
        float: left;
    }
    .inner-middle{ 
       height: 80px; 
       margin: 0 100px; 
       background: green;        
    }
    .left {
        width: 100px;
        float: left;
        height: 80px;
        margin-left: -100%;
        background: yellow;
    }

    .right {            
        width: 100px;
        float: left;
        height: 80px;
        margin-left: -100px;
        background: pink
    }
</style>
</head>

<body>
<div class="header">header-start header header header header header header-end </div>
   <div class="content">
    <div class="middle">
        <div class="inner-middle">middle-start middle middle middle middle middle middle middle middle middle middle middle-end</div>
    </div>
    <div class="left">left-start left left left left left left left left left left left left left left-end </div>
    <div class="right"> right-start right-end</div>
   </div>
   <div class="footer"></div>
</body>
</html>
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末禽最,一起剝皮案震驚了整個濱河市袱饭,隨后出現(xiàn)的幾起案子川无,更是在濱河造成了極大的恐慌虑乖,老刑警劉巖懦趋,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疹味,死亡現(xiàn)場離奇詭異仅叫,居然都是意外死亡,警方通過查閱死者的電腦和手機糙捺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門诫咱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人洪灯,你說我怎么就攤上這事坎缭。” “怎么了签钩?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵掏呼,是天一觀的道長。 經(jīng)常有香客問我铅檩,道長憎夷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任昧旨,我火速辦了婚禮拾给,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘兔沃。我一直安慰自己蒋得,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布窄锅。 她就那樣靜靜地躺著缰雇,像睡著了一般入偷。 火紅的嫁衣襯著肌膚如雪械哟。 梳的紋絲不亂的頭發(fā)上疏之,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天暇咆,我揣著相機與錄音丙曙,去河邊找鬼其骄。 笑死亏镰,一個胖子當(dāng)著我的面吹牛拯爽,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播毯炮,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼桃煎!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起为迈,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎曲尸,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體另患,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年鸦列,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片薯嗤。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡纤泵,死狀恐怖骆姐,靈堂內(nèi)的尸體忽然破棺而出捏题,到底是詐尸還是另有隱情玻褪,我是刑警寧澤公荧,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站循狰,受9級特大地震影響券勺,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜关炼,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一钠四、第九天 我趴在偏房一處隱蔽的房頂上張望盗扒。 院中可真熱鬧缀去,春花似錦、人聲如沸缕碎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至赊抖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間寨典,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工报亩, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人弦追。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像劲件,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子零远,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

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