Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 圆角与伪元素css_Html_Css - Fatal编程技术网

Html 圆角与伪元素css

Html 圆角与伪元素css,html,css,Html,Css,请查看以下小提琴: 我有以下html标记: <div class="media-container"> <iframe width="365" height="200" src="https://www.youtube.com/embed/JqjIb6FhU_k" frameborder="0" allowfullscreen></iframe> </div> 我想在视频的底部也有圆角,就像在顶部一样。问题是,我使

请查看以下小提琴:

我有以下html标记:

    <div class="media-container">
        <iframe width="365" height="200" src="https://www.youtube.com/embed/JqjIb6FhU_k" frameborder="0" allowfullscreen></iframe>
    </div>
我想在视频的底部也有圆角,就像在顶部一样。问题是,我使用pseudo元素在底部绘制箭头,在这个设置中,我很难绕过底部的拐角

有人知道如何解决这个问题吗


谢谢大家!

我认为用遮罩图像覆盖视频会更容易。大概是这样的:

img{
宽度:340px;
高度:200px;
位置:绝对位置;
z指数:2;
/*右:28px;
底部:77px*/
}
.媒体容器{
位置:固定;
z指数:1;
右:28px;
底部:77px;
宽度:340px;
高度:200px;
溢出:隐藏;
文本对齐:居中;
}

这样做:

<div class="fixed">
<div class="media-container">
        <iframe width="340" height="200" src="https://www.youtube.com/embed/JqjIb6FhU_k" frameborder="0" allowfullscreen></iframe>
    </div>
</div>
这是我的答案。
这个工具很方便,拿着吧

通过添加另一个元素并使用框阴影,您可以创建背景颜色的“反向边框”,从而屏蔽视频。请参见下面的元素“.底部边框”:

.media容器{
位置:相对位置;
宽度:340px;
高度:200px;
边界半径:7px 7px 0;
溢出:隐藏;
文本对齐:居中;
}
iframe{
左边距:-16px;
}
.media container:之后,.media container:之前{
底部:0%;
左:0%;
边框:实心透明;
内容:“;
身高:0;
宽度:164px;
位置:绝对位置;
指针事件:无;
}
.媒体容器:之后{
边框颜色:rgba(255、255、255、0);
边框底色:#fff;
边框宽度:16px;
左边距:-16px;
}
.媒体容器:之前{
边框颜色:rgba(245,41,34,0);
边框底色:#fff;
边框宽度:16px;
左边距:175px;
}
.底边{
高度:7px;
位置:绝对位置;
底部:16px;
宽度:100%;
}
.底部边框:在,
.底边:后{
内容:“;
位置:绝对位置;
排名:0;
宽度:7px;
高度:7px;
}
.底部边框:之前{
左:0;
边框左下半径:7px;
箱形阴影:-3.5px 3.5px 0 3.5px白色;
}
.底边:后{
右:0;
边框右下半径:7px;
盒影:3.5px 3.5px 0 3.5px白色;
}

对于一个伪元素,我坚持使用阴影,对于另一个伪元素,使用渐变-这样就不需要额外的真实元素。 这是小提琴:


不幸的是,许多视频包含不允许掩盖的广告。@sc3w我认为,您应该在示例中看到它是怎样的。等几分钟是的,这是一个简单的解决方案,但出于用户体验的原因,它也需要在箭头中包含视频无论如何,谢谢。非常感谢,这正是我要找的您可以截断iframe底部边框:
iframe{border radius:0 10.5%10.5%/0 0 5em 5em;}
<div class="fixed">
<div class="media-container">
        <iframe width="340" height="200" src="https://www.youtube.com/embed/JqjIb6FhU_k" frameborder="0" allowfullscreen></iframe>
    </div>
</div>
.fixed{
    position:fixed;
      right: 28px;
    bottom: 77px;
    width: 340px;
    height: 200px;
}
.media-container {
    position: relative;
    border-radius: 7px;
    text-align: center;
    background: #ddd;
    width:340px;
}

.media-container:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(0, 0, 0, 0);
    border-top-color: #ddd;
    border-width: 30px;
    margin-left: -30px;
}
.media-container {
    position: relative;
    width: 340px;
    height: 200px;
    overflow: hidden;
    border-radius: 7px 7px 0 0;
}

.media-container iframe {
    width: 110%;
    height: 110%;
    margin-left: -5%;
}

.media-container:after, .media-container:before {
    content: "";
    position: absolute;
    pointer-events: none;
}

.media-container:after {
    right: 0;
    left: 0;
    bottom: 16px;
    height: 14px;

    border-radius: 7px;
    box-shadow: -333px 7px #ffffff, 333px 7px #ffffff;
    /* 333px = 340px -7px */
}

.media-container:before {
    right: 0;
    bottom: 0;
    left: 0;
    height: 16px;

    background:
        linear-gradient(45deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 49.99%, rgba(255,255,255,0) 50%, rgba(255,0,0,0) 100%) -8px 100%,
        linear-gradient(135deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 49.99%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%) 8px 100%;
    /* 8px = 16px / 2 */
    background-repeat: no-repeat;
}