css子元素相对父元素进行定位的实现
解决方案
在父元素中加入position:relative;
子元素中加入position:absolute; right:20px;
代码
html结构
<div id="div1"> <div id="div2"></div> </div>
css
#div1{ width:500px;height:500px; background-color:darkgray; position:relative; } #div2{ width:30px;height:30px; background-color:red; position:absolute; right:20px; }
效果
原理
浏览器渲染html,是有文档流的说法的,块级元素换行渲染,行内元素行内渲染,在这里,两个div都是块级元素,一个父,一个子,正常来说的渲染结果是父元素在浏览器左上角,子元素在父元素的左上角。
如果我们要对子元素相对父元素进行定位,就要用对position属性。
position属性值
属性值 | 描述 |
---|---|
absolute | 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 |
relative | 生成相对定位的元素,相对于其正常位置进行定位。 |
我们知道,要使用相对于父元素的定位,肯定要使用absolute,为什么直接使用absolute不起作用?因为使用absolute相对于父元素定位,对父元素有一个要求,就是父元素的position不能是static,如果父元素的position是static那么就继续向上查找元素,知道找不position不为static的元素,对这个元素进行相对定位,所以,需要将父元素的position设置为relative,这样做是没有影响的,因为,relative只是相对于正常位置进行定位,正常位置就是所谓的文档流默认的输出位置,如果我们设置了position为relative而不设置偏移量x,y,那就相当于父元素的位置是没有变动的。
到此这篇关于css子元素相对父元素进行定位的实现的文章就介绍到这了,更多相关css子元素相对父元素定位内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!
相关文章
- 这篇文章主要介绍了CSS中的元素定位方法详解,是CSS入门学习中的基础知识,需要的朋友可以参考下2015-07-21
- 这篇文章主要介绍了详解CSS 子元素相对于父元素固定定位解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小2020-09-03
- 下面小编就为大家带来一篇css position 设置元素的定位方式详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-08-05
- 网页制作Webjx文章简介:position属性可以让你让你随意控制一个特定元素在浏览器何处以及如何显示。比方说我们用position:fixed 让一个图片显示在浏览器的左上角.即使出现2009-04-02
CSS元素定位之通过元素的标签或者元素的id、class属性定位详解
这篇文章主要介绍了CSS元素定位之通过元素的标签或者元素的id、class属性定位,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的2022-09-08
最新评论