Css 浮动元素不';t粘贴到父包装器div的顶部
我的包装纸上有三个div。我希望他们中的两个粘在左上角,他们需要在对方下面。第三个div需要保持在右上角,但不保持在右上角 我就是这样尝试的,但失败了: 这是在.html:Css 浮动元素不';t粘贴到父包装器div的顶部,css,html,css-float,Css,Html,Css Float,我的包装纸上有三个div。我希望他们中的两个粘在左上角,他们需要在对方下面。第三个div需要保持在右上角,但不保持在右上角 我就是这样尝试的,但失败了: 这是在.html: 我不想重新排列.html中的元素,因为我想让它们正确地排列,以便为移动设备设计样式,我可以使用另一个包装器div,但我想知道为什么第一个方法不起作用,以及是否有一个修复方法可以在不弄乱.html和保持模板灵活性(不带位置:相对)的情况下修复它?删除float:right来自#nav #nav { background
我不想重新排列.html中的元素,因为我想让它们正确地排列,以便为移动设备设计样式,我可以使用另一个包装器div,但我想知道为什么第一个方法不起作用,以及是否有一个修复方法可以在不弄乱.html和保持模板灵活性(不带位置:相对)的情况下修复它?删除
float:right代码>来自#nav
#nav {
background: seagreen;
width: 200px;
height: 40px;
}
我已经修改了你的小提琴,以便给你你想要做的
下面的链接是第一个fix fiddle的修改版本。我刚刚使用了css属性,没有按照您的要求移动任何html div
在我看来,最好的选择是侧边栏内容(徽标和座右铭)的容器。你为什么不想使用它?如果有必要,我会使用它,但我想更好地理解它为什么会这样。你在第二个左浮动的div之后浮动div
这是因为右浮动的div
与第二个左浮动的div是头对头的。如果将右侧浮动的div
放在第二位,它将与第一个div
迎头相接。解决方案将是你提供的两个修复就足够了!有关于这个问题的最新消息吗。。我想知道是什么导致了这种行为?你有没有测试过?这不是作者想要的。哦!它起作用了!您仍然需要将display:inline块添加到div中,以使其工作,但它可以工作。谢谢这根本不起作用:/它粘到其他div上,我希望它粘到右边框问题是,这粘到左侧的div上,我希望它粘到右边框上,当我将其调整到更小的尺寸时,我完全知道您要做什么。你在你的帖子中提到,你希望你的div在手机上看起来也很好,我建议你使用高度和宽度值,以%为单位,而不是px,因为使用确定的px(像素)值会扭曲你在手机上的页面。您可以通过将其他两个div组合在一个div中来实现向右浮动的导航div,正如您在第二个Fix fiddle中提到的那样。我已经更新了你的第二小提琴。检查一下,我没有将高度和宽度的px值更改为%。你能解释一下吗?
#wrapper {
background: #CCC;
width: 500px;
height: 250px;
margin: auto;
}
#logo {
background: tomato;
width: 300px;
height: 20px;
float: left;
}
#motto {
background: sienna;
width: 300px;
height: 20px;
float: left;
clear: left;
}
#nav {
background: seagreen;
width: 200px;
height: 40px;
float: right;
}
<div id="wrapper">
<div id="nav">Navigation</div>
<div id="logo">Logo</div>
<div id="motto">Motto</div>
</div>
<div id="wrapper">
<div id="logo-motto-container">
<div id="logo">Logo</div>
<div id="motto">Motto</div>
</div>
<div id="nav">Navigation</div>
</div>
#logo-motto-container {
float: left;
#nav {
background: seagreen;
width: 200px;
height: 40px;
}
#nav {
background: seagreen;
width: 100%x;
height: 40px;
}
#nav {
background: seagreen;
width: 200px;
height: 40px;
float: right;
position: absolute;
}