【问题标题】:Float 2 elements side by side inside a container div在容器 div 内并排浮动 2 个元素
【发布时间】:2013-08-19 18:48:24
【问题描述】:

这应该是一件容易的事,但我在过去的 30 分钟里一直在看它,但无法弄清楚。

这里是html代码;

<div style="width: 250px;">
  <img style="float: left; width: 20px;" src="public/_images/ok_kutu.jpg" alt="kutu" /> 
  <h3 style="float: left; width: 50px; color: #FFF; font-size: 18px;">Jobs</h3>
  <div style="clear: left;"></div>
</div>

我想要的只是将 img 和 h3 项目并排放置。 相反,我得到了这个;

【问题讨论】:

  • 您必须删除&lt;h3&gt; 上的默认边距 - 添加margin: 0;

标签: html css web


【解决方案1】:

默认情况下,&lt;h3&gt; 元素具有顶部和底部边距。您应该使用margin: 0 删除它们:

<div style="width: 250px;">
    <img style="float: left; width: 20px;" src="public/_images/ok_kutu.jpg" alt="kutu" /> 
    <h3 style="float: left; width: 50px; color: #FFF; font-size: 18px;margin:0">Jobs</h3>
    <div style="clear: left;"></div>
</div>

另外,也许考虑使用外部 CSS,而不是将所有样式信息内联。从长远来看,它会更容易维护......

请看这个jsFiddle demo

【讨论】:

    【解决方案2】:

    你可以使用:

    display: inline-block;
    

    代替:

    float: left;
    

    一切都会好起来的:)

    这是演示(更改图片):http://jsfiddle.net/JjTfy/2/

    P.S - 你真的应该使用单独的 CSS 样式表而不是内联样式。

    【讨论】:

    • 那是因为H3有margin。如果你去掉它,垂直边距还是可以的
    • 是的,但是如果你去掉h3上的边距,就没有必要使用inline-block显示...
    • 找出不同之处:floating vs inline-block
    • 使用 inline-block 更加灵活
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-27
    • 1970-01-01
    • 2011-12-14
    • 2020-02-29
    相关资源
    最近更新 更多