18910140161

HTML元素呈现的宽度不等于设置的CSS宽度-堆栈溢出

顺晟科技

2022-10-18 12:30:57

131

我有一组嵌套的HTML元素,它们由一个父元素(AssetContainer)和两个主要的嵌套部分(MediaViewContainer&;AssetDetailsContainer)。右侧组件(AssetDetailsContainer)有几个子DIV,但它们没有自己的样式。我的问题是,右侧组件没有以其样式的大小进行渲染。AssetDetailsContainer CSS将宽度设置为600px,这将显示在检查器中,但随后使用一个不同的、小得多的值来实际呈现元素。如果我设置一个较大或较小的值,它会增长和收缩,但在所设置的值的某个非整数范围内。通过";缩放";可能是一个不好的术语,因为呈现的值/输入值比率不是一个常数。

我为宽度中涉及的主要元素附加了一些检查器面板的图像,显示了它们的HTML、CSS和实际呈现的属性。我知道图像并不理想,但这些图像似乎最能代表一个地方的相关数据。

AssetDetailsContainer(右侧子元素)检查器快照AssetDetailsContainer (right side child element) inspector snapshot

查看检查器中显示的结果AssetDetailsContainer,我们在CSS中看到的是原始的600px,但随后它被呈现为104.5px.

AssetContainer(父元素)检查器快照AssetContainer (parent element) inspector snapshot

MediaViewContainer(左侧子元素)检查器快照enter image description here

关于布局,我在这里遗漏了

什么?


顺晟科技:

事实证明,解决方案是将AssetDetailsContainer嵌套在无样式的<div>。我认为,由于AssetDetailsContainer有一个相对定位属性,它不能很好地处理用于创建并排布局的父级的Flex定位。额外的DIV层似乎为不同的定位属性提供了适当的分割,我现在得到了预期的行为。

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航