html - 在一个 div 中设置两个内联子元素的样式,以便左边的子元素占据最大宽度

标签 html css less

我有一个 div 包含两个内联子项。 像..

<div>
    <span> stuff </span>
    <span> more stuff with variable length </span>
<div>

我想让我的第二个 child 占据它需要的任何宽度,然后让第一个 child 成为 100% - 第二个 child 的宽度。使两个子级内联。

是否有针对此问题的仅 css/less 解决方案?

最佳答案

这可能可以使用 flex 属性来实现,但这里是我如何使用 float 让它工作的。请注意,我将跨度更改为 div - 可能可以通过将跨度设置为 display:block 来实现此目的,但我只是觉得这样更简洁。此外,一个重要的方面是 div 的顺序; float 排在第一位,这样“rest”部分的内容就可以基于它剩下的内容。

.outer {
  width: 100%;
  height: 300px;
  }

.outer > div {
  height: 100%;
  }

.fill {
  display: inline-block;
  float: right;
  background-color: green;
  }

.rest {
  overflow: hidden;
  background-color: red;
  }
<div class="outer">
  <div class="fill">This will use up as much space as it needs to</div>
  <div class="rest">Fill content</div>
  
</div>

关于html - 在一个 div 中设置两个内联子元素的样式,以便左边的子元素占据最大宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33785277/

相关文章:

css - 带有指针事件的 Svg 在 Safari 中不起作用

css - 因式分解 :hover mixin with Less

html - 设置定义列表中两个连续 <dd> 中第二个的样式

javascript - 使用多个用户凭据的 Json 登录

html - Chrome 与 Firefox 的垂直对齐方式不同( block 引用 :before)

css - 将 WinLess 与 Bootstrap 3.3.7 结合使用

css - 如何更新 Site.less/site.css 和 bundle/minify 以使用 BuildBundlerMinifier 生成输出

javascript - 无法在 JavaScript 中找到 id

html - 三级水平菜单栏的 UL 列表显示不正确

javascript - Meebo 栏如何跨浏览器工作得如此出色?