【发布时间】:2020-02-15 01:10:20
【问题描述】:
我正在编写一个 Web 组件,当用户将其放到他们的网页上时,我需要知道它的可用高度和宽度。 Web 组件将所有内容包装在 Shadow DOM 中,并且至少在高度方向包括潜在的可滚动部分。除此之外,它还包括 <details><summary>... 之类的内容。
我正在为此寻找策略。在这种情况下,“可用高度和宽度”可能没有很好地定义。
对我可以使用什么有什么建议吗?有什么建议可以澄清我的问题吗?
【问题讨论】:
-
我很确定您想要的是容器查询。它们实际上还不存在。否则你会做很多 JavaScript
-
@evolutionxbox 谢谢,是的,这可能就是我想要的。但即使有这样的查询,问题也出奇地复杂。我正在考虑不同的方法来给用户一些简单的提示(因为我不希望他们理解复杂性)。一种方法是为用户添加
data-height-hint=*并根据用户提供的值采取行动。但我不确定。 -
你想解决什么问题?
-
@evolutionxbox 在这种特殊情况下的主要问题是保持(可能是可滚动的)文本可见。这是因为图像/视频也需要(可能)可见。这个案例中的 web 组件中的顶级子元素的数量并没有那么大,所以我可能可以毫不费力地处理 JavaScript 中的复杂性,但是与周围 HTML 元素的接口仍然不容易掌握。
-
我很难想象你的意思。您介意在问题中添加minimal reproducible example 吗?一个证明问题的?
标签: javascript css web-component shadow-dom