html - 使 3 个 span 恰好填满一行

标签 html css responsive-design

我有以下问题:

我在给定宽度的文档中有一行。

现在我有 3 个元素,其中一个是 <a>两个是 <span> .

<a>标签包含一个没有固定宽度的字符串。所以 <a>将具有不同的宽度。

第三个元素,它是一个<span> , 具有固定的宽度,并且必须位于三个容器的右边界。

第二个元素,也就是第一个<span> , 应该恰好位于中间。

view

直到现在我还没有找到任何方法来实现这一目标。我知道用 table 可能是可能的,但这似乎不是正确的方法。我相信也有一个 CSS 解决方案。

最佳答案

要添加到 display:table; 选项,你有 display:flex;floatting 方法用否定的 margin 对于旧浏览器: DEMO (both methods)

flex :

HTML

<p class="flex"><a href="#"> text as long as needed </a>
<span class="middle">
   text with any width text with any width text with any width text with any width 
</span>
  <span> span </span>
</p>

CSS

.flex {
  display:flex;
}
.middle {
  flex:2;
  white-space:nowrap;
}

float小技巧:

HTML

<p class="funny"><a href="#"> text as long as needed </a>
<span class="right"> span </span>
<span class="layout">
  <span> text with any width text with any width text with any width text with any width </span>
</span>
</p>

CSS

a {
  float:left;
  background:#2EAF2E;
  color:#2B3A23;
  text-decoration:none;
}
.right {
  float:right;
  color:white;
  background:#333;
}
.layout {
  display:block;
  overflow:hidden;
  background:#AA2425;
  color:#2B3A23;
}
.layout span {
  display:inline-block;
  margin-right:-9999px;
}

关于html - 使 3 个 span 恰好填满一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25089731/

相关文章:

html - 如何使用内联 CSS by th :style using "The ? : operator" in ThymeLeaf

html - 如何在不使用绝对位置的情况下使我的 h1 位于图像背景的中心?

javascript - 循环序列中的 Html/Javascript 幻灯片问题

jquery - 响应式设计不适用于 iphone

c# - 使用angular js和WebAPI上传excel文件

html - <img> 元素是 block 级还是行内级?

javascript - 我可以在将鼠标悬停在另一个类上时向 div 添加一个类,而无需在 Ember 中使用 jQuery

html - 不同宽度的div元素,将后续div堆叠在较短的列上

css - 设置固定 div 的高度(响应式)

css - 动态自适应导航栏示例