搜索
首页web前端css教程div+css浮动的解决方法

div+css浮动的解决方法

Mar 31, 2017 am 11:15 AM
css浮动

如何清楚浮动(一)

  已知一个大的div容器,这个容器包含了两个子div容器,然后在这两个子div容器的后面再添加一个div(这个div表示清除浮动的div容器),清楚浮动的div容器设置css样式为clear:both,此时,大的div标签的内部(左右两边/*css5*/)浮动就清除了。

  如果有一个大的div容器2664b5c137162ed32cb2c4b60e3a831f 16b28748ea4df4d9c2150843fecfba68 ,这个大的div包含了一个子div容器4cd6539b02a5cf52b7697d7aec70ae5416b28748ea4df4d9c2150843fecfba68,子div容器设置一个宽度、高度、背景色,不设置内、外边距以及浮动,此时子div容器默认居左,这时子div居左是浮动(float)继承浏览器的属性,不具有布局的作用。然后我们设置这个子div容器的浮动,让它居左float:left;我发现设置了浮动居左float:left,子div容器产生了浮动,子div容器离大div容器顶部有一定距离。

<body>
        <div class="divcss5">
            <div class="clear"></div>
        <!--<div class="clear eft"></div>
                    <div class="clear ight"></div>-->
        </div> 
    </body>

浮动有margin属性

  然后我margin-top:10px, 子div容器在原有的基础上向下移动了10px的距离,也就是说,浮动不会影响margin-top属性应有的偏移量,同理也不会影响margin-leftmargin-rightmargin-bottom属性应有的偏移量。

浮动没有top,left,right,bottom属性

  然后,现在我删掉margin-top:10px;,给子div容器设置top:10px,发现纵坐标并没有发生偏移,也就是是说浮动并没有top属性。同理也就没有left、right、bottom属性。

  那么,在什么情况下设置top、left、right、bottom的属性才能对浮动起作用呢?

浮动有top,left,right,bottom属性(条件设置相对位置position)

  于是,我给子div容器加了相对位置position:relative,接着设置top:10px,突然发现子div容器向下偏移了10px。

  继续在子div浮动的状态,给它设置position:relative;,接着给它设置margin-left:10px;,看到子div容器的位置水平向右发生了10px的偏移量,同理margin-top、margin-right、margin-bottom都会改变。

  也就是说,当給子div容器设置浮动float:left,接着设置margin-left会起作用,设置top是没有作用。只有给子div容器设置相对位置position的时候,top才能在浮动的状态下起作用,那么是不是说left,top是在相对位置的时候,才能起作用呢?那么现在我们就做一个实验,我在子div容器里把float:left;position:relative;都删掉,不会有浮动,也不会有相对位置,然后写上top:10px;left:10px;相应的css代码如下.clear{width: 200px;background: #f2e;color:#030617;height: 20px;top:50px;left:10px;};,结果是子div容器根本没有在横、纵轴移动过位置,所以事实证明left、top是在设置了相对位置position的时候才起作用。margin就是不管你设置position与不设置position都会起作用。

  继续上面的float浮动,如果现在给float设置inherit;继承浏览器的浮动属性,此时我们看子div是不浮动的,默认居左。同样的給子div设置浮动样式 none initial也不会有浮动作用。只有給子div容器设置了left和right的浮动,子div容器才会出现浮动状态。

如何清楚浮动(二)

  下面,我们用一种其他的方法来清除浮动,HTML代码还是以上的代码,大容器的div的css代码:.divcss5{padding:10px 0;width: 100%; left: 50%;right: 50%;background: #007CB5;},子div容器的css代码:.clear{width: 200px;background: #f2e;color:#030617;height: 20px;float:left;},此时看到的是浮动的效果,子div容器浮在大容器上面,同样的原理,我还是用清除浮动clear:both;我们可以用css伪元素:after,下面就是一个很简单的css代码,给父容器写css伪类,代码:.divcss5:after{content: "1";clear: both;display: block;},此时,我们看到的是,清除了大容器的浮动,并且在浏览器上能看到子div容器被包含在了大div容器内部。在浏览器上查看元素,可以看到after包含在了父容器内,所以,after相当于在给父容器内部加一个清楚浮动的div,只是少了一个div层,这个层被.divcss5:after实现了。

以上是div+css浮动的解决方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
jamstack景观jamstack景观Apr 13, 2025 am 11:00 AM

Netlify发明了Jamstack一词,这不是一个大秘密。虽然可以在不使用Netlify的情况下拥抱jamstack,但值得注意的是Netlify在

为什么我们使用.html代替.htm?为什么我们使用.html代替.htm?Apr 13, 2025 am 10:59 AM

来自安迪的有趣问题:

我的开发ama的剪辑我的开发ama的剪辑Apr 13, 2025 am 10:55 AM

我最近在开发人员上做了一个AMA。只是借此机会在这里搬迁一些答案,例如一个好的indiewebber。

我们应该构建几个网站?我们应该构建几个网站?Apr 13, 2025 am 10:42 AM

有人给我发了电子邮件:

Gatsby和WordPressGatsby和WordPressApr 13, 2025 am 10:39 AM

Gatsby和WordPress是一个有趣的组合。一方面,这很有意义。盖茨比可以从任何地方吸收数据,而WordPress具有

如何在Gatsby中获取当前页面URL如何在Gatsby中获取当前页面URLApr 13, 2025 am 10:37 AM

这项看似简单的任务使我在网站上工作时抓了几个小时。事实证明,获取当前页面URL

我在2019年作为网络开发人员(和一个人)的进步如何我在2019年作为网络开发人员(和一个人)的进步如何Apr 13, 2025 am 10:35 AM

我们进入了二十一世纪的二十多岁的咆哮(提示爵士音乐?)。重要的是,我和我作为负责任的人关注

'有用”吗?'有用”吗?Apr 13, 2025 am 10:31 AM

上帝我很有趣。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具