contentRect
只读特性在
ResizeObserverEntry
interface returns a
DOMRectReadOnly
object containing the new size of the observed element when the callback is run. Note that this is better supported than
ResizeObserverEntry.borderBoxSize
or
ResizeObserverEntry.contentBoxSize
, but it is left over from an earlier implementation of the Resize Observer API, is still included in the spec for web compat reasons, and may be deprecated in future versions.
var contentRect = resizeObserverEntry.contentRect;
A
DOMRectReadOnly
object containing the new size of the element indicated by the
target
特性。
若
target
is an HTML
元素
, the returned
contentRect
is the element's content box. If the
target
是
SVGElement
, the returned
contentRect
is the SVG's bounding box.
The following snippet is taken from the
resize-observer-text.html
(
see source
) example. This uses a simple feature detection test to see if the browser supports the newer
ResizeObserverEntry.contentBoxSize
property — if so, it uses that to get the sizing data it needs. If not, it uses
contentRect
.
const resizeObserver = new ResizeObserver(entries => {
for (let entry of entries) {
if(entry.contentBoxSize) {
h1Elem.style.fontSize = Math.max(1.5, entry.contentBoxSize.inlineSize/200) + 'rem';
pElem.style.fontSize = Math.max(1, entry.contentBoxSize.inlineSize/600) + 'rem';
} else {
h1Elem.style.fontSize = Math.max(1.5, entry.contentRect.width/200) + 'rem';
pElem.style.fontSize = Math.max(1, entry.contentRect.width/600) + 'rem';
}
}
});
resizeObserver.observe(divElem);
| 规范 | 状态 | 注释 |
|---|---|---|
|
重置大小观测器
The definition of 'contentRect' in that specification. |
编者草案 | 初始定义。 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
contentRect
|
Chrome 64 | Edge 79 | Firefox 69 | IE No | Opera Yes | Safari No | WebView Android 64 | Chrome Android 64 | Firefox Android No | Opera Android Yes | Safari iOS No | Samsung Internet Android 9.0 |
完整支持
不支持
ResizeObserverEntry
borderBoxSize
contentBoxSize
contentRect
target