HTMLVideoElement: videoHeight 屬性
HTMLVideoElement 介面的只讀 videoHeight 屬性表示影片的內在高度,以 CSS 畫素表示。簡單來說,這是媒體在其自然尺寸下的高度。
值
一個指定影片內在高度(以 CSS 畫素為單位)的整數值。如果元素的 readyState 是 HTMLMediaElement.HAVE_NOTHING,則此屬性的值為 0,因為影片或海報幀的尺寸資訊尚未可用。
關於內在寬度和高度
一個使用者代理透過以下方式計算元素的內在媒體寬度和高度:首先使用媒體的原始畫素寬度和高度,然後考慮包括以下因素:
- 媒體的縱橫比。
- 媒體的清晰孔徑(位於媒體中心、與目標縱橫比匹配的子矩形)。
- 目標裝置的螢幕解析度。
- 媒體格式所需的任何其他因素。
如果元素當前顯示的是海報幀而不是渲染的影片,則海報幀的內在尺寸被認為是 <video> 元素的大小。
如果內在媒體尺寸在任何時候發生變化,並且元素的 readyState 不是 HAVE_NOTHING,則會向 <video> 元素髮送一個 resize 事件。當元素從顯示海報幀切換到顯示影片內容,或者當顯示的影片軌道發生變化時,都可能發生這種情況。
示例
此示例為 resize 事件建立了一個處理程式,該處理程式會將 <video> 元素的大小調整為與其內容相匹配。
js
let v = document.getElementById("myVideo");
v.addEventListener("resize", (ev) => {
let w = v.videoWidth;
let h = v.videoHeight;
if (w && h) {
v.style.width = w;
v.style.height = h;
}
});
請注意,這僅在 videoWidth 和 videoHeight 均非零時才應用更改。這可以避免在尚未獲得有效尺寸資訊時應用無效更改。
規範
| 規範 |
|---|
| HTML # dom-video-videoheight-dev |
瀏覽器相容性
載入中…