float與position同時使用

float浮動與position同時使用并不會沖突,前者是使元素脫離標(biāo)準(zhǔn)流,浮動在文檔流上;而后者是使元素相對自身的移動定位,雖浮動但占據(jù)原有位置。當(dāng)兩者同時使用時,不會發(fā)生沖突,反而使元素同時具有兩者特性,即既可以相對自身移動定位,又可以浮動不占位置。

<style>
        * {
            margin: 0;
            padding: 0;
        }
        .nav {
            margin: 100px;
            height: 200px;
            width: 300px;
            border: 1px solid red;
        }
        .banner {
            float: left;
            height: 50px;
            width: 50px;
            position: relative;
            background-color: red;
        }
        .header {
            float: left;
            height: 50px;
            width: 50px;
            background-color: yellow;
        }
    </style>
</head>
<body>
    <div class="nav">
        <div class="banner"></div>
        <div class="header"></div>
    </div>
</body>

如代碼所示,此時的效果為:


20180901162516580.png

當(dāng)設(shè)置邊偏移時,效果如下:

.banner {
            float: left;
            height: 50px;
            width: 50px;
            position: relative;
            left: 100px;
            background-color: red;
        }
20180901165556404.png

???疑問,雖然邊偏移有效,但為什么黃色的盒子沒有因為float:left到最左邊呢??


因為relative是要保留原本的位置的啊?。?!

為了搞清楚原因,做以下測試:

.header {
            float: right;
            height: 50px;
            width: 50px;
            background-color: yellow;
        }

把黃色的float改成right,效果如下,其確實浮到了最右邊:


2018090117014172.png

再測試,這次修改結(jié)構(gòu),把黃色的div改到紅色的div前面(或者刪掉黃色盒子的浮動)(再或者給其加一個定位absolute),效果如下,黃色的也浮到了最左邊:

        <div class="header"></div>
        <div class="banner"></div>
    </div>
20180901170436970.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補...
    _Yfling閱讀 14,127評論 1 92
  • 1. 前言 前端圈有個“?!保涸诿嬖嚂r,問個css的position屬性能刷掉一半人,其中不乏工作四五年的同學(xué)。在...
    YjWorld閱讀 4,911評論 5 15
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HT...
    kismetajun閱讀 28,804評論 1 45
  • 學(xué)會使用CSS選擇器熟記CSS樣式和外觀屬性熟練掌握CSS各種選擇器熟練掌握CSS各種選擇器熟練掌握CSS三種顯示...
    七彩小鹿閱讀 6,445評論 2 66
  • 1.停止和別人作比較。 2.只和你自己做比較。每天進(jìn)步一點點。 3.專注于做最好的你自己。學(xué)習(xí)或提升某項技能/能力...
    核心自我閱讀 430評論 0 0

友情鏈接更多精彩內(nèi)容