HTML中加入視頻播放及調節視頻大小位置等比例那些事

需求:視頻在一個div中自動播放並作爲背景,該視頻必須完全填充在該div中,視頻不能溢出div,

HTML中加入視頻很簡單加一個<video>  </video>即可

現在要設置視頻爲背景,上層還有圖片、文字、等;

視頻width、height大小和所存放視頻的div設置的width、height大小不同,視頻可能會出現不是理想的效果 

比如:

這時視頻width和weight設置爲100%,已經到達視頻原有的最大尺寸,但是還無法完全覆蓋我們的div,所以現在要設置視頻Video的屬性和其父級DIV的屬性: 

 .video_back {
            /*設置視頻最小寬度和高度 這個設不設置沒有什麼影響 */
            /*min-width: 100%;
            min-height:100%;*/
            /**/
            width: 100% !important;
            height: 100%;
            /*生成絕對定位的元素,相對於 static 定位以外的第一個父元素進行定位。可以根據實際情況修改*/
            position: absolute;
            /*這裏我試了一下好像只要是矩形的四個角的的點都行,也就是說right:0;bottom:0;也可以*/
            left: 0;
            top: 0;
            /*將視頻放在元素的堆疊順序最底層,以防覆蓋其他東西*/
            z-index: -9999;
            /*被替換的內容正好填充元素的內容框。整個對象將完全填充此框。如果對象的寬高比與內容框不相匹配,那麼該對象將被拉伸以適應內容框。*/
            object-fit: fill;
        }
        #parent{
            position:absolute;
        }

幾個重要的設置:

  1. 視頻樣式中的:position:absolute;這是讓視頻相對於父級div生成絕對定位;
  2. z-index:-9999;這是讓視頻在堆疊順序的最底層,作爲背景;
  3. object-fit:fill;視頻完全填充到div中的關鍵!!!!
  4. 父級設置樣式position:absolute 生成相對定位的元素,相對於其正常位置進行定位

 視頻其他小屬性

  1. muted  靜音播放
  2. autoplay=autoplay;打開時自動播放;
  3. loop=loop;循環播放
  4. constrol 不顯示視頻播放框

 最終效果:

源代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>視頻背景網頁</title>
    <style type="text/css">
        .video_back {
            /*設置視頻最小寬度和高度*/
            /*min-width: 100%;
            min-height:100%;*/
            /**/
            width: 100% !important;
            height: 100%;
            /*生成絕對定位的元素,相對於 static 定位以外的第一個父元素進行定位。可以根據實際情況修改*/
            position: absolute;
            /*這裏我試了一下好像只要是矩形的四個角的的點都行,也就是說right:0;bottom:0;也可以*/
            left: 0;
            top: 0;
            /*將視頻放在元素的堆疊順序最底層,以防覆蓋其他東西*/
            z-index: -9999;
            /*被替換的內容正好填充元素的內容框。整個對象將完全填充此框。如果對象的寬高比與內容框不相匹配,那麼該對象將被拉伸以適應內容框。*/
            object-fit: fill;
        }
        #parent{
            position:absolute;
        }
        .wen {
            font-size: 30px;
            color: #fff;
        }
    </style>
</head>
<body>
    <div class="parent" style="width:1920px;height:1080px;">
        <!--
    autoplay	autoplay如果出現該屬性,則視頻在就緒後馬上播放。
    controls	controls如果出現該屬性,則向用戶顯示控件,比如播放按鈕。
    loop	loop如果出現該屬性,則當媒介文件完成播放後再次開始播放。
    muted	muted規定視頻的音頻輸出應該被靜音。
    poster	URL	規定視頻下載時顯示的圖像,或者在用戶點擊播放按鈕前顯示的圖像。
    preload	preload
    如果出現該屬性,則視頻在頁面加載時進行加載,並預備播放。
    如果使用 "autoplay",則忽略該屬性。
    src	 url要播放的視頻的 URL。
    width	pixels設置視頻播放器的寬度。
    height	pixels設置視頻播放器的高度。-->
        <video class="video_back" src="/img/yundun.mp4" muted autoplay="autoplay" loop="loop">
            您的瀏覽器不支持
        </video>
        <div class="wen">這是視頻的上浮文字</div>
    </div>
</body>
</html>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章