带你了解SVG标签

这篇具有很好参考价值的文章主要介绍了带你了解SVG标签。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

svg标签,HTML,前端,javascript,html

✍️ 作者简介: 前端新手学习中。

💂 作者主页: 在主页中查看更多前端教学,可接大学生前端作业单。

🎓 专栏分享:css重难点教学   Node.js教学 从头开始学习   ajax学习
js学习

初始SVG

SVG是一种图形文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。
图片格式一般都是像素处理的,图片放大会模糊失真,svg格式属于是对图片的形状描述,所以它本质上是文本文件,体积较小,并且不管放大多少倍都不会模糊失真。使用时直接在img标签中写入svg格式的图片即可。

矩形,圆形和椭圆型

如何使用svg绘制特殊形状,svg标签中中有一些预定义的属性标签。
svg画布宽高默认值是300 x 150(单位px)

 矩形

svg标签,HTML,前端,javascript,html
svg标签,HTML,前端,javascript,html



   <body>

    <svg>
        <rect width="100" height="100" fill="blue" stroke-width="10" stroke="black" />
    </svg>
    <svg>
        <!-- opacity 透明度  xy坐标 画布左上角参考点-->
        <rect x="10" y="10" width="100" height="100" fill="blue" stroke-width="10" stroke="black" opacity="0.5" />
    </svg>
    <svg>
        <!-- rx ry分别为圆的x轴和y轴半径长度 -->
        <rect rx="20" ry="20" y='20' width="100" height="100" fill="blue" stroke-width="10" stroke="black" />
    </svg>

</body>

svg标签,HTML,前端,javascript,html

 圆形

svg标签,HTML,前端,javascript,html
svg标签,HTML,前端,javascript,html

 <svg width="300" height="300">
        <circle cx="20" cy="20" r="10" stroke="red" stroke-width="3" />
    </svg>

svg标签,HTML,前端,javascript,html

 椭圆形

  <svg width="300" height="300">
        <ellipse cx="150" cy="50" rx="100" ry="50" fill="yellow" />
    </svg>

svg标签,HTML,前端,javascript,html

绘制线条 多边形 连续线条

 线条

<svg>
        <!-- x1 y1起点 x2 y2终点 -->
        <line x1="0" y1="0" x2="150" y2="150" stroke="red" />
    </svg>

svg标签,HTML,前端,javascript,html

 多边形

  <svg width="300" height="300">
        <!-- points 填写多个连接点点 -->
        <polygon points="300,20 200,20 250,100 " stroke="blue" stroke-width="3" />
        <polygon points="200,20 100,20 100,100 200,100" stroke="blue" stroke-width="3" />

    </svg>

svg标签,HTML,前端,javascript,html

 连续线条

  <svg>
        <polyline points="20,20 40,25 60,40 80,120 120,140 200,180" fill="none" stroke="black" />
    </svg>

svg标签,HTML,前端,javascript,html

绘制文本

<body>
    <svg width="300" height="300">
        <text x="0" y="15" fill="red">
            坚毅的小解同志
        </text>
        <!-- rotate  旋转角度   旋转中心点 默认为0,0 -->
        <text x="0" y="30" fill="red" transform="rotate(30 20,40)">
            坚毅的小解同志
        </text>
    </svg>
    <svg width="300" height="300">
        <!-- 添加tspan子标签添加不同格式和样式 -->
        <text x="10" y="20" fill="red">
            a
            <tspan x="10" y="45">b</tspan>
            <tspan x="10" y="75">c</tspan>
        </text>
    </svg>
    <!-- 固定的命名空间 -->
    <svg xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
        <!-- 超链接添加 xml-->
        <a xlink:href="https://blog.csdn.net/m0_62360527?type=blog">
            <text y="15" fill='red'>小解同志</text>
        </a>
    </svg>
</body>

svg标签,HTML,前端,javascript,html

绘制路径

<body>
    <svg width="800" height="800">

        <!-- d表示绘画  M就是类似canvas里面的moveto L就是lineto 
        注意  大写字母表示绝对定位 小写的话 就是相对定位-->
        <path d="M 150,0 L 75,200 L 225,200" />
        <!-- 贝塞尔曲线 M是起点
        q里面 是控制点 和终点 -->
        <path d="M 20 350 q 150 -300 300,0" fill="none" stroke="red" />
    </svg>
</body>

svg标签,HTML,前端,javascript,html

阴影和模糊

<body>
    <!-- 高斯模糊 -->
    <svg>
        <defs>
            <filter id="f1">
                <!-- 值越大越模糊 -->
                <feGaussianBlur stdDeviation="15" />
            </filter>
        </defs>
        <!-- id 属性 -->
        <rect filter="url(#f1)" x='50' y="10" width="90" height="90" stroke="green" stroke-width="3" fill="red" />
    </svg>
    <!-- 阴影效果 -->
    <Svg>
        <defs>
            <filter id="f2">
                <feOffset in="SourceAlpha" dx="30" dy="20" />
                <feGaussianBlur stdDeviation="11" />
                <feBlend in="SourceGraphic" />

            </filter>
        </defs>
        <rect width="90" height="90" fill="red" filter="url(#f2)" />
    </Svg>
</body>

svg标签,HTML,前端,javascript,html文章来源地址https://www.toymoban.com/news/detail-611764.html

到了这里,关于带你了解SVG标签的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【HTML】SVG实现炫酷的描边动画

    今天闲来无事,看到 Antfu 大佬的个性签名,觉得还是非常炫酷的,于是也想要搞一个自己的个性签名用来装饰自己的门面,不过由于手写的签名太丑了,遂放弃。于是尝试理解原理,深入研究此等密法,终于小有所成,发现原来是描边动画,于是记载如下,方便以后借鉴。

    2024年02月20日
    浏览(50)
  • 分享html网页引入svg图片的4种方法

    本文主要介绍了html网页引入svg图片的4种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着微点阅读小编来一起学习学习吧 web应用开发使用svg图片,总结了下,可以有如下4种方式: 1. 直接插入页面。 2. img标签

    2024年02月09日
    浏览(43)
  • HTML5 Canvas和Svg:哪个简单且好用?

    HTML5 Canvas 和 SVG 都是基于标准的 HTML5 技术,可用于创建令人惊叹的图形和视觉体验。 首先,让我们花几句话介绍HTML5 Canvas和SVG。 Canvas(通过 标签使用)是一个 HTML 元素,用于在用户计算机屏幕上动态绘制图形(线条、条形、图形等)。不过,canvas 元素只是信息的容器,绘图

    2024年02月13日
    浏览(52)
  • html5学习笔记15-内联SVG 可缩放矢量图形

    https://www.runoob.com/html/html5-svg.html SVG 图形的容器。SVG 有多种绘制路径、框、圆、文本和图形图像的方法。 可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺寸的情况下其图形质量不会有损失 SVG 是万

    2024年02月11日
    浏览(51)
  • 使用html2canvas将整个元素导出为图片,其中包含svg和img,解决img跟svg导出时img或svg(canvg处理)不显示的问题,以及相关优化

    目录 前言 一、准备 二、解决问题 1.将svg跟img转为canvas的方法 2.将base64转换成file文件的方法 3.点击下载使用方法 1).对dom没有处理,需求只是将图片导出即可  2).涉及对dom的拖拽,流程图之类的(需复制dom,在复制的dom上进行处理)  三、效果图如下 查阅很多相关的文章和

    2024年01月20日
    浏览(67)
  • [网络安全/前端XSS防护]一文带你了解HTML的特殊字符转义及编码

    在 HTML 中,有一些特殊字符不可直接使用,需要使用转义字符或实体编码来表示。这是为了避免这些字符与 HTML 标签和语法产生冲突。同时,也是为了防范前端XSS。 例如,有些特殊字符(如 和 )作为HTML标签的一部分,要是没有被特殊处理可能被恶意XSS。 HTML的特殊字符转义

    2024年02月06日
    浏览(57)
  • 【网络安全/前端XSS防护】一文带你了解HTML的特殊字符转义及编码

    在 HTML 中,有一些特殊字符不可直接使用,需要使用转义字符或实体编码来表示。这是为了避免这些字符与 HTML 标签和语法产生冲突。同时,也是为了防范前端XSS。 例如,有些特殊字符(如 和 )作为HTML标签的一部分,要是没有被特殊处理可能被恶意XSS。 HTML的特殊字符转义

    2024年02月04日
    浏览(45)
  • SVG图标,SVG symbols,SVG use标签

    项目中图标的使用,趋势是使用svg作图标的,优点如下 兼容现有图片能力前提还支持矢量 可读性好,有利于SEO与无障碍 在性能和维护性方面也比iconfont要强很多 怎么在项目中优雅的使用svg图标,下面我们将采用类似雪碧图的做法 1、普通的使用 普通的使用遇到以下的问题:

    2024年02月15日
    浏览(56)
  • 使用selenium解决svg标签定位问题

    使用正常的定位方式无法识别到svg标签; 解决方法: //div[@class=“ant-table-tbody”]/ [name()=“svg”]/ [name()=“use”]

    2024年02月12日
    浏览(41)
  • 小程序如何image标签显示svg

    在小程序中使用 image 标签显示 SVG 图片可以使用下面的方式: 将 SVG 图片转换为 base64 编码的字符串,并将其作为 image 标签的 src 属性的值。 在 image 标签的样式中添加 \\\"mode\\\" 属性,并将其值设置为 \\\"widthFix\\\",这样图片就可以根据容器的宽度进行等比缩放。 在 image 标签的样式中

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包