我已经非常熟练地使用媒体查询来动态更改 DOM 元素。但是,据我所知,这些只能检测窗口/设备的宽度/高度,而不是单个 DOM 元素。我希望能够制作一个 CSS 来根据元素的大小重新排列和调整元素的内容。例如:
╒══════════════════════════════╕
│Browser Window │
├──────────────────────────────┤
│ ┌──────────────────────────┐ │
│ │.resizingParent │ │
│ │┌──────┐ Some caption text│ │
│ ││ IMG │ directly relating│ │
│ ││ │ to the image. │ │
│ │└──────┘ │ │
│ └──────────────────────────┘ │
│ │
└──────────────────────────────┘
╒══════════════════════════════╕
│Browser Window │
├──────────────────────────────┤
│ ┌───────────────┐ │
│ │.resizingParent│ │
│ │┌─────────────┐│ │
│ ││ ││ │
│ ││ I M G ││ │
│ ││ ││ │
│ ││ ││ │
│ │└─────────────┘│ │
│ │Some caption │ │
│ │directly │ │
│ │relating to the│ │
│ │image. │ │
│ └───────────────┘ │
│ │
└──────────────────────────────┘
我希望解决方案像使用媒体查询一样简单,例如下面的(无效)代码:
<STYLE>
.resizingParent>IMG {
display: inline-block;
width: 25%;
}
.resizingParent(max-width:10em)>IMG {
display: block;
width: 100%;
}
</STYLE>
<DIV CLASS=".resizingParent">
.resizingParent
<IMG SRC="IMG.png" ALT="IMG"/>
Some caption text directly relating to the image
</DIV>