嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片

【HTML&&CSS】CSS解決高度塌陷問題&&實現簡單的導航效果

2020-3-5    seo達人

下面這段代碼是實現簡單的導航效果:



在這里插入代碼片<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title></title>

<style>

*{

   margin:0px;

   padding:0px;

   list-style:none;

}

.nav{

width:700px;

margin:100px auto;



}



.nav ul li{

float:left;

margin-right:5px;

}



.nav ul li a{



width:100px;

height:30px;

color:#fff;

display:block;

line-height:30px;

margin-right:5px;

text-decoration:none;

background:red;

text-align:center;



}

.clearfix:after {

content: ".";

display: block;

height: 0;

clear: both;

visibility: hidden;

}

.nav ul li a:hover{

background:yellow;

color:blue;

text-decoration:underline;

}



</style>

</head>

<body>

<div class="nav">

<ul class="clearfix">

<li><a href="#">導航</a></li>

<li><a href="#">導航</a></li>

<li><a href="#">導航</a></li>

<li><a href="#">導航</a></li>

<li><a href="#">導航</a></li>

</ul>

</div>

</body>

</html>





實現效果如圖:

容易犯錯的地方:剛開始我把display:block;屬性寫在最前面,結果一直出不來,后來發現display屬性應該放在height和width屬性后面



我還學到一個知識點:關于父元素塌陷問題:



在文檔流中,父元素的高度默認是被子元素撐開的,也就是說父元素多高,子元素就多高



但是為子元素設置浮動以后,子元素就會完全脫離文檔流,此時將會導致子元素無法撐起父元素的高度,導致父元素的高度塌陷



由于父元素的高速塌陷了,則父元素下所有的元素都會向上移動,這樣會導致頁面布局混亂



  所以我們在開發中一定要避免出席那高度塌陷的問題,這時候我們可以將父元素的高度寫死,這樣可避免塌陷的問題出現,但是一當高度寫死,父元素的高度將不能自動適應子元素的高度,所以這種方式是不推薦使用的

1

解決的方案:

根據W3C標準,在頁面中元素有一個隱含的屬性叫做Block Formatting Context



方案一:*(設置zoom為1和overflow為hidden)

當開啟元素的BFC后,元素會有以下特性:



父元素的垂直外邊距不會和子元素重疊

開啟BFC的元素不會被浮動元素所覆蓋

開啟BFC的元素可以包含浮動的子元素

那如何開啟元素的BFC呢?



設置元素浮動

設置元素的絕對定位

設置元素為inline-block(但是設置inline-block可以解決問題,但是會導致寬度丟失,所以不推薦使用這種方式)

將元素的overflow設置為一個非visible的值(推薦方式:將overflow:hidden這個是副作用最小的開啟BFC方式,所以可以這么說,以后若是再塌陷,就給父元素加上overflow:hidden屬性)

但需要注意的是:



在IE6以及以下的瀏覽器中并不支持BFC,所以使用這種方式并不能兼容IE6,在IE6中雖然沒有BFC,但有另一個隱藏屬性叫做hasLayout該屬性作用和和BFC類似。但在IE6瀏覽器可以通過開hasLayout來解決問題

開啟方式很多,我們可以直接用一種副作用最小的直接將元素的zoom設置為1,比如父元素是box1,我們可以在父元素中加上zoom:1;



在這里解釋一下zoom表示放大的意思,后邊跟著一個數值,寫幾就可以將元素放大幾倍,所以zoom:1表示不放大元素,但是可以通過該樣式可以開啟hasLayout.

但需要注意的是zoom屬性放IE6可以,別的瀏覽器比如Chrome就不行



****所以重頭戲來了:若我們想要兼容所有瀏覽器?


  1. 設置:zoom:1;
  2. 設置overflow:hidden;



    兩者缺一不可(zoom這個樣式,只在IE中支持)

    1

    方案二:(添加一個空白的div,參考下面的box3)

    我們可以直接在高度塌陷的父元素的最后,添加一個空白的div,由于這個div并沒有浮動,所以它是可以撐開父元素高度的,然后再對其清除浮動,這樣可以通過這個空白的div撐開父元素的高度,基本沒有副作用

    例如:

    *



    <style>

     .box1{border:1px solid red;}

     .box2{

     width:100px;

     hejght:100px;

     background-color:blue;

     }

     .box3{clesr:both;}/
    清除兩端浮動對當前元素的影響/

     

    body里面是:

    <div class="box1">

        <div class="box2"></div>

             <div class="box3"></div>

      </div>

      (這里面box3是我們自己添加用來解決高度塌陷問題的)



    但使用這種方法雖然可以解決問題,但會在頁面中產生多余的結構,所以此時方法三就出來了,這種方法我們最推薦,因為他沒有副作用



    方法三:(通過after偽類)

    我們先來看一段代碼:



    <style>

    .clearfix:after{

                       content:" ";/
    添加一個內容*/

                       display:block;

                       clear:both;

                       

    }

    </style>

    <body>

    <div class="box1 clearfix">

    <div class="box2"></div>

    </div>

    </body>



    我來總結一下方法三:

    我們可以通過after偽類向元素的最后添加一個空的塊元素,然后對其清楚浮動,這樣做和添加一個div原理一樣,可以達到一個相同的效果,而且不會在頁面中添加多余的div,這是我們最推薦使用的方式,幾乎沒有任何副作用




日歷

鏈接

個人資料

藍藍設計的小編 http://m.sdgs6788.com

存檔

嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片
<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 国产精品视频xxx| 久久久国产精品一区| 欧美成人免费在线观看| 影音先锋中文字幕一区二区| 久久av一区二区三区| 亚洲欧美日韩综合| 久久伊人亚洲| 国产在线不卡视频| 蜜桃久久av一区| 久久综合久久88| 国产欧美一二三区| 久久精品日韩| 久久九九久精品国产免费直播| 国产一区二区三区免费不卡| 久久九九精品| 久久成人免费视频| 亚洲国产精品一区二区久| 欧美xxx在线观看| 欧美国产日韩一区| 亚洲午夜伦理| 亚洲女优在线| 在线成人亚洲| 99精品热6080yy久久 | 午夜精品影院| 久久成人亚洲| 日韩午夜电影| 亚洲在线电影| 亚洲国产视频一区二区| 欧美夫妇交换俱乐部在线观看| 欧美激情成人在线| 欧美在线免费一级片| 久久蜜桃资源一区二区老牛| 99成人在线| 宅男精品视频| 在线成人黄色| 亚洲视频一区二区| 国语自产精品视频在线看抢先版结局| 久久亚洲欧美| 美日韩免费视频| 亚洲综合色在线| 久久久久国产一区二区| 一区二区三区高清不卡| 欧美在线关看| 亚洲日本成人网| 欧美一区二区在线观看| 一区二区三区欧美成人| 久久久久se| 香蕉成人久久| 欧美精品国产一区二区| 久久久免费精品| 国产精品扒开腿爽爽爽视频| 欧美成人精品在线观看| 欧美精品久久一区| 麻豆freexxxx性91精品| 国产精品家庭影院| 亚洲丰满在线| 精品成人久久| 亚洲免费视频一区二区| 一区二区三区免费网站| 玖玖玖国产精品| 久久久精品五月天| 国产精品色网| 一本色道精品久久一区二区三区 | 宅男精品视频| 亚洲精品美女免费| 久久中文精品| 一区二区三区产品免费精品久久75 | 久久狠狠久久综合桃花| 午夜精品久久久久久久蜜桃app| 美女亚洲精品| 免费亚洲婷婷| 在线精品亚洲一区二区| 欧美一区二区三区在线观看视频| 亚洲午夜电影网| 裸体一区二区| 欧美韩日亚洲| 亚洲第一毛片| 免费在线成人| 欧美电影免费观看高清| 在线观看中文字幕亚洲| 久久久久久久久岛国免费| 亚洲资源av| 国产精品日产欧美久久久久| 亚洲一区二区三区高清不卡| 午夜久久黄色| 国产亚洲综合精品| 亚洲在线播放| 久久久久久黄| 亚洲国产老妈| 欧美顶级少妇做爰| 亚洲日本视频| 亚洲一区二区精品在线| 国产女主播一区| 欧美在线不卡视频| 亚洲风情在线资源站| 亚洲美女区一区| 国产精品久久一区二区三区| 久久精品国产第一区二区三区最新章节| 欧美99久久| 亚洲欧美制服另类日韩| 亚洲欧洲综合| 国产欧美91| 欧美精品在线播放| 久久国产精品久久久| 99re国产精品| 欧美粗暴jizz性欧美20| 午夜久久电影网| 亚洲最新在线| 亚洲国产精品一区二区久| 国产精品美女主播在线观看纯欲| 久久中文字幕一区| 亚洲欧美清纯在线制服| 最新成人av网站| 老司机午夜精品视频| 亚洲综合成人婷婷小说| 亚洲精品中文字| 一区二区视频欧美| 国产精品久久久久毛片大屁完整版| 久热精品视频| 久久精品国产免费| 午夜精品视频在线观看一区二区| 亚洲精品综合精品自拍| 亚洲承认在线| 美女久久网站| 久久最新视频| 久久久久久高潮国产精品视| 午夜久久99| 香蕉亚洲视频| 性伦欧美刺激片在线观看| 亚洲夜晚福利在线观看| 一区二区三区日韩精品| 亚洲精选在线| 亚洲美女黄色| 亚洲精品视频中文字幕| 亚洲精品欧美在线| 亚洲欧洲视频在线| 亚洲精品三级| 亚洲久久一区二区| 99成人在线| 亚洲色图综合久久| 国产精品99久久99久久久二8 | 亚洲一区二区三区在线视频| 亚洲精品久久久蜜桃| 亚洲人成小说网站色在线| 亚洲欧洲日韩女同| 一本色道久久加勒比88综合 | 国产精品人人爽人人做我的可爱| 欧美日韩一区二区三区免费看| 欧美日韩免费观看中文| 欧美日韩精品一区二区三区| 欧美日韩国产在线| 国产精品福利网站| 国产精品爽爽爽| 国产亚洲精品一区二区| 一区在线播放视频| 亚洲激情不卡| 亚洲一区二区三区在线播放| 欧美一区二区三区的| 久久这里只有精品视频首页| 欧美 日韩 国产 一区| 亚洲黑丝在线| 亚洲天堂久久| 久久久久一区| 欧美日韩亚洲综合一区| 国产欧美激情| 亚洲国内精品在线| 亚洲女爱视频在线| 美女露胸一区二区三区| 日韩视频免费| 久久精品成人| 欧美日韩中文在线| 国产日韩欧美亚洲一区| 亚洲国产精品一区| 亚洲欧美高清| 欧美高清视频一区二区三区在线观看 | 欧美大学生性色视频| 99国产精品久久| 久久动漫亚洲| 欧美日韩精品免费看| 国内欧美视频一区二区| 一本到高清视频免费精品| 久久久久九九九九| 亚洲美女中出| 久久婷婷国产综合尤物精品| 国产精品高潮呻吟| 亚洲国产欧美日韩| 久久精品国产精品亚洲| 一本久久综合| 欧美黄色视屏| 曰本成人黄色| 欧美一区二区三区免费视| 亚洲黄色在线观看| 久久大综合网| 国产精自产拍久久久久久蜜| 99在线热播精品免费| 免费精品99久久国产综合精品| 亚洲一二三区精品| 欧美片在线观看| 亚洲经典在线| 蜜臀va亚洲va欧美va天堂|