CSS 定位問題

定位有三種:

1.相對定位

相對定位:相對於本身原來的位置定位瀏覽器

現象和使用:佈局

1.若是對當前元素僅僅設置了相對定位,那麼與標準流的盒子什麼區別。spa

2.設置相對定位以後,咱們纔可使用四個方向的屬性: top、bottom、left、rightcode

特性:blog

1.不脫標頁面佈局

2.形影分離it

3.老家留坑(佔着茅房不拉屎,噁心人)io

因此說相對定位 在頁面中沒有什麼太大的做用。影響咱們頁面的佈局。咱們不要使用相對定位來作壓蓋效果class

用途:margin

1.微調元素位置

2.作絕對定位的參考(父相子絕)絕對定位會說到此內容。

參考點:

本身原來的位置作參考點。

2.絕對定位

特性:

1.脫標 2.作遮蓋效果,提成了層級。設置絕對定位以後,不區分行內元素和塊級元素,都能設置寬高。

參考點(重點):

1、單獨一個絕對定位的盒子

1.當我使用top屬性描述的時候 是以頁面的左上角(跟瀏覽器的左上角區分)爲參考點來調整位置
2.當我使用bottom屬性描述的時候。是以首屏頁面左下角爲參考點來調整位置。

2、以父輩盒子做爲參考點

1.父輩元素設置相對定位,子元素設置絕對定位,那麼會以父輩元素左上角爲參考點,這個父輩元素不必定是爸爸,它也能夠是爺爺,曾爺爺。

2.若是父親設置了定位,那麼以父親爲參考點。那麼若是父親沒有設置定位,那麼以父輩元素設置定位的爲參考點

3.不單單是父相子絕,父絕子絕 ,父固子絕,都是以父輩元素爲參考點

注意了:父絕子絕,沒有實戰意義,作站的時候不會出現父絕子絕。由於絕對定位脫離標準流,影響頁面的佈局。相反‘父相子絕’在咱們頁面佈局中,是經常使用的佈局方案。由於父親設置相對定位,不脫離標準流,子元素設置絕對定位,僅僅的是在當前父輩元素內調整該元素的位置。

還要注意,絕對定位的盒子無視父輩的padding!

 

3.固定定位

固定當前的元素不會隨着頁面滾動而滾動

特性: 

1.脫標 2.遮蓋,提高層級 3.固定不變

參考點:

設置固定定位,用top描述。那麼是以瀏覽器的左上角爲參考點
若是用bottom描述,那麼是以瀏覽器的左下角爲參考點

做用: 1.返回頂部欄 2.固定導航欄 3.小廣告

 

二 絕對定位的盒子居中

  設置絕對定位以後,margin:0 auto;不起任何做用,若是想讓絕對定位的盒子居中。當作公式記下來 設置子元素絕對定位,而後left:50%; 
margin-left等於元素寬度的一半,實現絕對定位盒子居中
  
*{
            padding: 0;
            margin: 0;
        }
        .box{
            width: 100%;
            height: 69px;
            background: #000;
        }
        .box .c{
            width: 960px;
            height: 69px;
            background-color: pink;
            /*margin: 0 auto;*/
            position: relative;
            left: 50%;
            margin-left: -480px;

            /*設置絕對定位以後,margin:0 auto;不起任何做用,若是想讓絕對定位的盒子居中。當作公式記下來 設置子元素絕對定位,而後left:50%; margin-left等於元素寬度的一半,實現絕對定位盒子居中*/
        }
相關文章
相關標籤/搜索