矩形的位置

矩形的位置

<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <svg viewBox="0 0 400 200" xmlns="http://www.w3.org/2000/svg">
        <defs>
            <clipPath id="clip" >
                <rect x="00" y="00" width="100" height="50" fill="blue"/>
            </clipPath>
            
        </defs>
        <circle cx="50" cy="50" r="50" clip-path="url(#clip)" fill="red"/>
        <!-- <rect x="00" y="00" width="100" height="50" fill="blue"/> -->
    </svg>
</body>
</html>

这样画出来的矩形遮住圆形的下半部分,但是如果单独画一个同样的矩形,显示的位置却是原本圆形的上半部分:

<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <svg viewBox="0 0 400 200" xmlns="http://www.w3.org/2000/svg">
        <!-- <defs>
            <clipPath id="clip" >
                <rect x="00" y="00" width="100" height="50" fill="blue"/>
            </clipPath>
            
        </defs>
        <circle cx="50" cy="50" r="50" clip-path="url(#clip)" fill="red"/> -->
        <rect x="00" y="00" width="100" height="50" fill="blue"/>
    </svg>
</body>
</html>

这是为什么?矩形的位置应该怎么控制呢?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

你好,rect标签中前两个参数就是矩形的位置,x是水平坐标,y是垂直坐标的。

例如现在要显示下半部分圆:

http://img1.sycdn.imooc.com//climg/5c89d294000113a010330278.jpg

效果:

http://img1.sycdn.imooc.com//climg/5c89d2a00001b17705430508.jpg

自己可以测试下,祝学习愉快!

  • 慕瓜9218797 提问者 #1
    clipPath里面是图形需要保留的部分吗?我之前的理解是矩形的位置代表圆形被切除的部分
    2019-03-18 12:10:47
  • 好帮手慕星星 回复 提问者 慕瓜9218797 #2
    是保留的部分,矩形所在的位置就是显示的内容,把没有覆盖住的裁剪掉。
    2019-03-18 15:42:31
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5&CSS3进阶与常用框架 2018
  • 参与学习       315    人
  • 提交作业       136    份
  • 解答问题       626    个

如果你有H5、CSS3、JS基础,热爱前端并希望在前端应用方面不断进步,那就来吧,本路径为你带来的课程有HTML5进阶、CSS3进阶、JS面向对象、jQ基础、Less等,助你进一步提升前端开发技能

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师