CSS 三 Angular 形和 IMG

标签 css image position geometry css-shapes

我正在尝试制作您在这张图片顶部看到的三 Angular 形部分:

Example of a triangle on top of an image

我尝试了几种方法都没有成功。

如果图像改变大小,我需要三 Angular 形响应。 而且我不希望容器 div 因为三 Angular 形而扩展。 但我无法修复 div 高度,因为它会随着图像大小的变化而变化。 我不想在 photoshop 中制作三 Angular 形并导出图像,因为当您单击它时,您也会看到三 Angular 形。

知道如何以正确的方式实现这一点吗?

这是我尝试过的:

http://jsfiddle.net/37uufbg3/

.arrow-down {
    width: 0; 
    height: 0; 
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;   
    border-top: 20px solid #f00;
}
.image{
    width:100%;
}

<div class="imageTriangle">
    <img src="image.jpg">
    <div class="arrow-down"></div>
</div>

最佳答案

为图像使用伪元素:after

演示 - http://jsfiddle.net/victor_007/dvv7bg76/

这个例子不适用于ie8

.image:after {
    content:'';
    width: 0; 
    height: 0; 
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;   
    border-top: 20px solid #f00;
    position:absolute;
    left:50%;
    top:0;
    transform:translatex(-50%); /** making it horizontally center **/
}

或者对于旧的浏览器你也可以使用这个

演示 - http://jsfiddle.net/victor_007/dvv7bg76/1/

这将适用于 ie8

.image:after {
    content:'';
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #f00;
    position:absolute;
    left:50%;
    top:0;
    margin-left:-20px; /** for older browsers **/
}

关于CSS 三 Angular 形和 IMG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26959642/

相关文章:

javascript - 仅以可见形式发送数据

security - 保护网页上的图像不被复制/保存?

css - 我如何移动这个 block ?

html - PNG 或 CSS 图标 - 哪个性能更好?

html - 为什么 <p> 嵌套在 <span> 中导致 block 元素?

html - 你能制作一个不包含固定宽度右侧边栏的流体宽度标题吗?

jquery - 我如何随机换出一个div的内容

javascript - 如何防止内联图像后换行?

CSS 中 HTML 的 "<img align=top>"?

Android listview项目背景改变