Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 浮动元素不';t粘贴到父包装器div的顶部_Css_Html_Css Float - Fatal编程技术网

Css 浮动元素不';t粘贴到父包装器div的顶部

Css 浮动元素不';t粘贴到父包装器div的顶部,css,html,css-float,Css,Html,Css Float,我的包装纸上有三个div。我希望他们中的两个粘在左上角,他们需要在对方下面。第三个div需要保持在右上角,但不保持在右上角 我就是这样尝试的,但失败了: 这是在.html: 我不想重新排列.html中的元素,因为我想让它们正确地排列,以便为移动设备设计样式,我可以使用另一个包装器div,但我想知道为什么第一个方法不起作用,以及是否有一个修复方法可以在不弄乱.html和保持模板灵活性(不带位置:相对)的情况下修复它?删除float:right来自#nav #nav { background

我的包装纸上有三个div。我希望他们中的两个粘在左上角,他们需要在对方下面。第三个div需要保持在右上角,但不保持在右上角

我就是这样尝试的,但失败了:

这是在.html:


我不想重新排列.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;
}