放置100%高度的视频&使用css或javascript 100%宽度

时间:2015-02-18 01:16:45

标签: javascript html css html5

我想放置一个html5视频(当然带有视频标签),100%宽度和100%高度将在后台播放。这是一个带图像的示例,我想要与视频完全相同,我只是没有找到如何做到这一点:

#image {
    background-image: url("image.jpg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
}

JSFiddle:http://jsfiddle.net/u9ncpyfu/

4 个答案:

答案 0 :(得分:18)

您可以尝试:



header {
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    height: 100vh;
    z-index: 0;
}
header h1 {
    text-align: center;
    font: 3em/1.4 helvetica neue, helvetica, arial, sans-serif;
    color: #fff
}
header video {
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
}

<header>
    <h1>Sample Title</h1>
	<video autoplay loop class="bg-video">
		<source src="https://d2v9y0dukr6mq2.cloudfront.net/video/preview/abstract-rainbow_wjpctkdes__PM.mp4" type="video/mp4">
	</video>
</header>
&#13;
&#13;
&#13;

保持纵横比和视频居中,同时始终完全覆盖容器

这里是fiddle working example.

希望有所帮助:)

答案 1 :(得分:5)

如果我理解正确,这应该像将min-height和min-width设置为100%一样简单。例如:

#video {
    position: fixed;
    left: 0;
    top: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
}

可能需要针对响应性进行调整。

请查看 jsfiddle


修改

如果您还希望视频保持居中,请将其包装在容器中,如下所示:

&#13;
&#13;
#video-wrap {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
#video {
    position: absolute;
    top: -9999px;
    bottom: -9999px;
    left: -9999px;
    right: -9999px;
    margin: auto;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;   
}
&#13;
<div id="video-wrap"><video id="video">
    <source src="http://techslides.com/demos/sample-videos/small.mp4" type="video/mp4">
    Your browser does not support HTML5 video.
</video>
</div>
&#13;
&#13;
&#13;

此处还有 jsfiddle

答案 2 :(得分:2)

设置

 top: 0;
 left: 0;
 right: 0;
 bottom: 0;

你可以忘记height: 100%,它只会延伸到包含div的内部内容的100%。

答案 3 :(得分:0)

如果您将HTML和BODY的高度设置为100%,则很容易。

WORKING JSFIDDLE DEMO

html,
body {
  height: 100%;
  overflow: hidden;
}
* {
  margin: 0;
  padding: 0;
}
video {
  height: 100%;
  width: 100%;
}
<video controls>
  <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4" />
  <source src="http://www.w3schools.com/html/mov_bbb.ogg" type="video/ogg" />
  Your browser does not support the video tag.
</video>