Heim  >  Artikel  >  Web-Frontend  >  position属性问题_html/css_WEB-ITnose

position属性问题_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 12:13:18839Durchsuche

        <div class="right">        	<div class="shadow"></div>      	</div>


.right{	width:30%;	float:right;	position:relative;	}.shadow{	width: 100px;	height: 100px;	background-color: rgb(237, 237, 237);	position: absolute;	left: 0px;	top: 2px;	}


重点是,为什么right的position属性为relative时,shadow是在right内的,当right的position属性为默认static时,shadow就到页面左上角去了?


回复讨论(解决方案)

绝对定位的元素的位置是相对于最近的已定位祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(也就是body)。

绝对定位的元素的位置是相对于最近的已定位祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(也就是body)。

那意思static算未定位,relative算已定位吗?


.right
float:right;
这个你写的呀

绝对定位的元素的位置是相对于最近的已定位祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(也就是body)。
++++

static就是position的默认值,也就是未定位。

absolute 相对BODY定位
其他相对父容器定位吧。

relative生成相对定位的元素,相对于其正常位置进行定位。这时候shadow会相对于right进行left 0像素的偏移,top 2像素的偏移。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。

这种情况十有八九是因为你的html没有遵循w3c标准

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn