好吧,标题不是最好的,但我想不出一个简单的方法来总结我的问题......所以就这样吧。
我有一个输入类型的文本(内联 block 元素--> 或至少浏览器将其设置为)并且我在 div( block )中有一个标签(内联)。
问题基于文本溢出:省略号。我发现在输入中放置特征的行为与保存标签的 div 之间存在一些差异。根据规范,它说你必须有一个不可见的溢出。我不需要在输入中有那个。我的问题只是...。为什么?我不喜欢事情的表现与我预期的不同并且不知道为什么(我不把事情看成表面值(value)......我需要知道细节。我在这里有一个示例代码片段来展示我的意思。
这是一个俗气的例子,但我需要简单来测试它。如果你删除了 overflow: hidden from div ......省略号不再起作用......但它根本不需要输入......为什么,whyyyyy 跪下......尖叫在天堂
:) 提前致谢
最佳答案
好吧,我实际上害怕将此作为答案发布,因为我无法用文档来支持它,但我会尝试分享一些启示。
HTML 输入控件(例如 input
select
textarea
)具有用户代理定义的行为,在某些方面似乎违背了共同点我们在其他元素中看到的属性。
例如,输入字段有一个内置的溢出,旨在防止输入的文本扩展元素。它由它的 -prefix-appearance
属性自然应用,您无法更改它。尝试将 overflow: visible;
强制添加到输入中,确保不会显示溢出的文本。
<input type="text" style="overflow:visible;width: 70px;" value="This text is not entirely visible" />
因此,text-overflow: ellipsis
将在这种元素上起作用,因为它的溢出的内部隐藏行为自然地暗示了它。
关于html - div 中输入和标签之间的行为差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28905079/