HTML/CSS float : left; is not working properly

标签 html css

我目前正在阅读 Headfirst CSS/HTML,但我对示例有疑问。

我正在尝试使用 float:left; 将主体 float 到侧边栏的左侧;但是它没有正确 float 。我已经研究过 HTML 和 CSS,但我不太明白出了什么问题。

这就是我想要的样子:

enter image description here

还有 fiddle :https://jsfiddle.net/Taubin/7Lhz4wtd/

#main {
  background: #efe5d0 url(images/background.gif) top left;
  font-size:  105%;
  padding:    15px;
  margin:     0px 10px 10px 10px;
  width:      420px;
  float:      left;
}
<div id="allcontent">
  <div id="header">
  </div>
  <div id="sidebar">
    <p class="beanheading">
      Sidebar text
    </p>
    <p>
      Sidebar text
    </p>
  </div>
  <div id="main">
    <h1>QUALITY COFFEE, QUALITY CAFFEINE</h1>
    <p>
      Main text
    </p>
  </div>
</div>

如有任何建议,我们将不胜感激。

最佳答案

首先,可能是您添加边距和填充的问题,这会增加框的大小,即使框的宽度为 420px,您也必须计算边距和填充,或者使用 * {框大小:边框框; },它将计算该元素的宽度作为所有尺寸(内边距、边距、宽度)的总和,并且不超过宽度。

其次, float 时元素的顺序很重要,将 main 始终放在侧边栏的顶部,因为元素从上到下开始,当您 float 顶部元素时,底部元素如果更宽,将折叠并对齐与主盒。

截图供引用:

enter image description here

关于HTML/CSS float : left; is not working properly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32301278/

相关文章:

css - 如何使用 intern js 截取 DOM 元素的屏幕截图?

javascript - Angular - 如何从 navigator.getUserMedia 设置视频 src?

javascript - 滚动时堆叠 div

css - 表格单元格上的边框 - 为什么突出 1px?

html - 我可以使用自定义标签名称,而不使用 Web 组件,仅用于样式设置吗?

jquery - Grails - 内部 CSS 工作,但外部失败

html - 如何水平对齐图像?

html - 选择css中元素的所有第n次出现

java - 如何在 Java Web 应用程序中显示 jFrame 表单 (NetBeans)

html - Bootstrap Navbar 链接不会居中