网站首页 > 技术文章 正文
下面的视频标签height设置成百分比,在微信小程序中解析出来压根不显示,直接审查元素发现video的高度是0:
<div class="video-box">
<video src="https:xxx.com/54321.mp4" width="100%" height="100%" />
</div>
微信小程序video组件默认是 width:300px,height:225px,但是如果有设置width和height会覆盖掉默认值,开始我以为是用百分比设置height这种写法不规范,或者不支持百分比设置高度。
从网上的一些文档上包括最权威的MDN,都说明了height的单位是CSS像素,难道是真的不支持百分比?
但是呢,和height对应的width又是支持百分比的,实际去设置成不同的值也是有效的,不支持这个假设看来是不成立了。
接着继续去浏览器里找找原因,同样的代码在浏览器中神奇的可以显示出视频来,但是直接去修改height的百分比值是无效的。
到这里大概能得出结论:
- video的height设置百分比在浏览器和小程序中都是无效的
- 浏览器会去默认处理video的百分比高,让video正常显示
- 小程序会用百分比覆盖掉video组件默认的height:225px,视频不显示
还额外发现一点,浏览器中height的默认单位是px,如果数值后面跟的是其他任何字符,如:#、vh、xx...谷歌浏览器都会默认给转成px,但是 % 却不会转,那从这也说明video的高度肯定是支持百分比的。
在回过头来看上面的代码,其实我们一直忽视了video组件的父级元素 video-box,height设置成百分比本来就是相对父级元素的百分比,如果父级元素没有高度值也就是 height:0,那子元素的height设置成任何的百分比也都是0。
实际在小程序和浏览器里验证,也确实是如此,只要给父元素设置一个具体的高度,那video的height设置成百分比是有效的。
- 上一篇: 表情包,朋友圈,发红包,加好友……这些微信用语,你会用德语说吗?
- 下一篇: js 录屏截图
猜你喜欢
- 2024-11-21 延迟加载图像以提高Web网站性能的五种方法「实践」
- 2024-11-21 web前端学到什么程度就可以找工作了?学到什么程度可以涨薪?
- 2024-11-21 web前端学到什么程度就可以找工作了?
- 2024-11-21 flv.js源码知识点(下)
- 2024-11-21 iG战队让一追三夺得德玛西亚杯西安站冠军
- 2024-11-21 前端新趋势?有了Web Component,还用纠结Vue或React?
- 2024-11-21 Python Web全栈之旅11--Web前端●CSS知识点汇总,建议收藏
- 2024-11-21 快速掌握前端开发中的常见错误
- 2024-11-21 用WebRTC和Node.js开发实时视频聊天应用
- 2024-11-21 9 个你可能从未使用过的很棒的 CSS 属性
- 标签列表
-
- content-disposition (47)
- nth-child (56)
- math.pow (44)
- 原型和原型链 (63)
- canvas mdn (36)
- css @media (49)
- promise mdn (39)
- readasdataurl (52)
- if-modified-since (49)
- css ::after (50)
- border-image-slice (40)
- flex mdn (37)
- .join (41)
- function.apply (60)
- input type number (64)
- weakmap (62)
- js arguments (45)
- js delete方法 (61)
- blob type (44)
- math.max.apply (51)
- js (44)
- firefox 3 (47)
- cssbox-sizing (52)
- js删除 (49)
- js for continue (56)
- 最新留言
-