【发布时间】:2022-01-13 09:54:21
【问题描述】:
关于如何用 CSS 填充空间有很多问题,this 是我认为的主要问题。如今,flexbox 提供了一个很棒且简单的解决方案。但是,它不允许您填充多行段落的剩余空间。明确地说,这就是我想要的:
Lorem ipsum dolor sit amet,consectetur adipiscing elit。 Quisque vel scelerisque purus, et ultricies sapien。 Donec mi augue, pulvinar at mauris sat amet, ultricies molestie nisi。 Cras et nisi lobortis。 从这里填写到最后 ->
我找到了one question asking the same,但是它使用 CSS content 规则填充空间,我需要能够用一个元素(特别是 <input>,如果这很重要的话)填充它。
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Quisque vel scelerisque purus, et ultricies sapien. Donec mi
augue, pulvinar at mauris sit amet, ultricies molestie nisi.
Cras et nisi lobortis.
<input type="text">
</p>
我目前的解决方案是在文本末尾和<input> 之间添加一个跨度,测量它的位置,然后手动设置宽度,但这需要我监听浏览器调整大小事件并重新计算宽度。如果可以完全在 CSS 中做到这一点,那就太好了。如果必须添加额外的元素,那很好。
【问题讨论】:
-
@sallf 你的意思是这样,添加我想要样式的HTML? (虽然如果必须添加额外的元素也没关系。)
-
我认为仅使用 css 是不可能的。如果您将段落中的每个字符包装在
<span>中,则可能有一种很奇怪的方法。你会对这样的答案感兴趣吗? -
我对任何事情都持开放态度,尽管这可能有点太老套了。我之前想过类似的事情,使用 flexbox,但使用的是单词而不是字符,但我不确定我是否真的能做到。