<noframes id="pfp5n">

<form id="pfp5n"></form>
<noframes id="pfp5n">
<noframes id="pfp5n"><form id="pfp5n"></form>
<address id="pfp5n"><form id="pfp5n"><nobr id="pfp5n"></nobr></form></address>
<form id="pfp5n"></form>

    <listing id="pfp5n"></listing>

    <listing id="pfp5n"></listing>
          您當前的位置:首頁 > 建站常識 > css強化

          老生常談position定位——又愛又恨的屬性

          2016-09-13
            關于css中的position這個屬性,在使用的時候,有時很強大,有時又讓人很無奈。
            強大的時候,對于div中的一些小物件不方便使用margin或者padding的時候,給與position:absolute;再配備left、right、top和bottom,基本上就是想放哪里放哪里了。
            讓人無奈的時候,就是我們一旦濫用了position這個定位屬性,就會讓自己的布局飛的滿天是,又因為z-index沒有設定好,基本上,整體的布局就會讓你手足無措,找原因的話,又非常麻煩,最后,恐怕只能推倒重做了。
            所以,對待position這個屬性,我們要詳細的了解到它運行的原理,以及應用的場景,這樣,我們才可以在想用的時候完美的驅使它來完成我們想要的效果。
            廢話不多說,直接上步驟,先說position的概念吧
            position,我們百度一下,就知道這個單詞的意思是方位,在css中,就是定位的意思,屬性名字是 position,屬性值有五個,分別是 static(默認定位)、absolute(絕對定位)、relative(相對定位)、fixed(固定定位)、inherit(繼承定位,不常用)。
            書寫規則:
            CSS
            position:static|absolute|relative|fixed|inherit
            每個屬性值都介紹一下吧
            1、position:static(默認定位)
            顧名思義,就是我們平常書寫的時候,每個div在文檔流中默認的排版,就是static屬性值,它不會讓div或者其他元素脫離文檔流,而是遵循排版的原則,從上到下,塊級元素換行,行內元素不換行等等通用原則,所以,如果不用定位屬性,那么這個position就不用設置。
            2、position:relative(相對定位)
            相對定位,就是相對于自己本身進行定為移動,它不會脫離文檔流,也就是說,我給一個元素設定了這個屬性,那么這個文件還會在這個文檔流中來回移動,至于怎么移動,下面再講。
            3、position:absolute(絕對定位)
            跟相對定位不同,它是相對于擁有相對定位屬性的父元素進行定位移動,它會脫離文檔流。
            如果父元素中的所有子元素都設置了absolute,那么所有的子元素都會浮起來,然后堆疊到一塊兒,所以為了把各個元素攤開顯示,我們需要移動這些元素,而移動這些元素的方法,就是直接是style樣式表中書寫:left、right、top、bottom四個屬性,然后在屬性的后面寫上px(像素)、%(百分比)等可以表示距離的單位。
            在這里,我們要特別強調,left和right不能同時使用,top和bottom不能同時使用。
            并且,這四個元素,都是相對于擁有相對定位(relative)屬性的父元素進行移動的。如果父元素沒有相對定位,那么絕對定位就是相對于body進行定位的。
            所以,為了不讓自己設置的元素跑飛了,那就記得給父元素設置relative吧。
            4、fixed(固定定位)
            這個定位是相對于瀏覽器窗口進行的定位,移動方法跟相對和絕對定位一樣的。
            它也會脫離文案流,我們常見的側邊欄或者廣告圖就是用這個功能實現的。很實用,很強大的功能。
            5、inherit(繼承定位),就是從父元素繼承position定位屬性,不怎么常用。
            講到這里,我們就涉及到一個z-index (層級)的問題。剛才我們講過,如果給子元素全部設置了absolute,那么所有的子元素就會堆疊在一起,互相遮蓋。
            如果我們需要在一個元素上堆疊好多層,那怎么給它們排序呢。這就需要用到z-index屬性了。
            z-index屬性的屬性值是數字。數字越大,那么它就顯示的最考上,比如說吧,
            z-index=0 的元素就會再 z-index=1的下面顯示,z-index=10會再z-index=8上面顯示,所以,堆疊它們的顯示順序,設置z-index就可以了。
            當然,如果不設置z-index的話,默認的,后面的元素會遮蓋前面的元素。
            使用時需注意的問題:
            1、float屬性不可以和position屬性共用,切記!
            2、使用absolute時記得給父元素加relative
            3、除了用left和top外,還有right和bottom,活學活用
            4、能不用position就不用position,畢竟容易把布局搞亂
            5、Javascript中調用position的方法是:div.style.positio=”absolute”類似 div是變量名
          本文關鍵詞:定位  position  

          一切精彩源自七七網絡!我們傾力打造時尚潮流第一線!

          ? 2012-2024七七世界網站建設     20707.net 1125w.com 版權所有     豫ICP備14018694號-1

          人成久久影院,和小姪女保持性关系故事,亚洲综合色欲色欲综合网站
          <noframes id="pfp5n">

          <form id="pfp5n"></form>
          <noframes id="pfp5n">
          <noframes id="pfp5n"><form id="pfp5n"></form>
          <address id="pfp5n"><form id="pfp5n"><nobr id="pfp5n"></nobr></form></address>
          <form id="pfp5n"></form>

            <listing id="pfp5n"></listing>

            <listing id="pfp5n"></listing>