1. 程式人生 > >css絕對定位和相對定位例項。

css絕對定位和相對定位例項。

先寫一段簡單程式碼:<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><metahttp-equiv="X-UA-Compatible"content="ie=edge"><linkrel="stylesheet"href="try.css"><title>Document</title></head><
body><divclass="try"></div><divclass="try1"><divclass="try2"></div></div></body></html>.try{width: 100px;height: 100px;background-color: #f40;}.try1{width: 100px;height: 100px;background-color:navajowhite;top: 0px;}.try2{width: 50px;height: 50px;background-color:red
;/* position: relative; */border: 1pxsolidred;bottom: 50px;}先將position:relation相對定位註釋,                                                                然後取消註釋,既加上相對定位,可以看到。                                                                                                      可以看到。                                                             
這裡設定的是bottom:50px;   然而此時try2是相對於父級try1,由此可見,此時的bottom是我們try2上邊框下部,與父級上邊框下部的距離。同時測試了一下right也是一樣的道理。然後將relation改為absolute(改為絕對定位), bottom改為right;可以看到。                相對定位是相對於頁面的。絕對定位是相對於元素最近的已定位的祖先元素即是設定了絕對定位或者相對定位的祖先元素)。如果元素沒有已定位的祖先元素,那麼它的位置則是相對於最初的包含塊(body而如果在.try1中加入relative,                                                                          如果在.try1中加入absolution,可以看到                                                                                                         可以看到                                                                由此可見絕對定位本身與文件流無關,因此不佔空間,普通文件流中的元素的佈局就當絕對定位的元素不存時一樣,所以 它們可以覆蓋頁面上其他的元素,且可以通過z-index屬性來控制這些層的對方順序(就像車在高架橋上一樣橋上和橋下互不影響)。而相對定位時,無論是否進行移動,元素仍然佔據原來的空間。因此,移動元素會導致它覆蓋其它框(不能撞車!)。