html - 将 svg 形状和线条添加到 SVG 剪辑的 div

标签 html css svg

首先:我正在尝试做的事情暂时与 chrome 不兼容。请使用 firefox 检查示例。

这是我所做的:

http://jsfiddle.net/Robodude/ev6VF/1/

<style type="text/css">
    .clip3 { 
        clip-path: url(#c3); 
    }
</style>

    <svg height="0">
        <defs>

        </defs>

        <clipPath id="c3">
            <polygon points="75,0 225,0 275,100 225,200 75,200 25,100" />
        </clipPath>
    </svg>
    <div class="container left">
        <div id="Image1" class="Image1 image clip3"></div>
        <div id="Image2" class="Image2 image clip3"></div>
        <div id="Image3" class="Image3 image clip3"></div>  
    </div>

我想做的是在被剪裁的 html 元素之上绘制,以便通过 ms paint 为剪切图像绘制一些重音和边框,如下所示。这对 SVG 可行吗?也许我可以向 .clip3 添加另一个属性并以某种方式将其链接到一些 svg 形状?

Hex image frames that need a partial border

我正在尝试很多不同的东西 - 但它们只是猜测,我找不到关于如何做到这一点的任何资源或信息。

我曾希望它能像这样工作:

<style type="text/css">
    .clip3 { 
        clip-path: url(#c3); 
        border: url(#b1);
    }
</style>

        <defs>
            <polyline id = "b1" points="75,0 225,0 275,100 225,200 75,200 25,100" stroke = "blue" stroke-width = "5"/>
        </defs>

最佳答案

想出了一个我认为不理想但可行的想法...=\

http://jsfiddle.net/Robodude/ev6VF/4/

<svg height="0">
    <clipPath id="c3">
        <polygon points="75,0 225,0 275,100 225,200 75,200 25,100"/>
    </clipPath>

    <defs>
        <polyline id="top" points="225,200 75,200 25,100" style="fill:none;stroke:blue;stroke-width:10" />
        <polyline id="middle" points="225,0 275,100 225,200" style="fill:none;stroke:blue;stroke-width:10" />
        <polyline id="bottom" points="25,100 75,0 225,0" style="fill:none;stroke:blue;stroke-width:10" />
    </defs>

</svg>

<div class="container left">
    <div id="Image1" class="Image1 image clip3">
        <svg width="100%" height="100%">
            <use xlink:href = "#top"/>
        </svg>
    </div>
    <div id="Image2" class="Image2 image clip3">
        <svg width="100%" height="100%">
            <use xlink:href = "#middle"/>
        </svg>
    </div>
    <div id="Image3" class="Image3 image clip3">
        <svg width="100%" height="100%">
            <use xlink:href = "#bottom"/>
        </svg>
    </div>  
</div>

关于html - 将 svg 形状和线条添加到 SVG 剪辑的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14838802/

相关文章:

html - 增加 Bootstrap 中搜索栏的宽度

svg - 如何防止 Inkscape 在导出 SVG 时添加变换?

javascript - 有没有办法在 SVG 文本路径上围绕单个字母绘制一个矩形

internet-explorer - IE9 中的 SVG 宽度

html - 我在CSS中的页脚不关注我的左右内容,只关注中间内容

php - 如何在html设计中显示20列

css - 有没有办法让 div 的宽度可变,对于小型设备宽度为 96%,对于大屏幕宽度为 62%?

css - 使用 Flexbox 填充剩余空间

jQuery animate() 函数

javascript - 根据字符串起始值进行过滤