**SVG**(Scalable Vector Graphics,可缩放矢量图形)是一种用来描述**二维矢量图形**的**XML标记语言**。 --- ## 🌱 SVG 的核心特点 1. **矢量图形**: - 与JPEG、PNG等位图格式不同,SVG使用点、线、多边形、路径等几何图形来描述图像,不会随缩放而失真。 2. **可缩放性**: - 无论放大或缩小多少倍,图像的质量都不会降低,适合响应式设计。 3. **XML格式**: - SVG是纯文本的XML文件,易于编写和修改,也便于搜索引擎优化(SEO)。 4. **可交互性**: - 支持JavaScript与CSS,可实现动画和交互效果。 --- ## 📌 简单示例 以下是一个基本的SVG图形示例: ```xml <svg width="200" height="200" xmlns="http://www.w3.org/2000/svg"> <circle cx="100" cy="100" r="80" fill="skyblue" stroke="blue" stroke-width="5"/> <text x="100" y="115" font-size="25" text-anchor="middle" fill="navy">SVG</text> </svg> ``` 效果: - 一个圆圈,蓝色边框,浅蓝色填充,中间标记文字 "SVG"。 --- ## 🚩 SVG 常用场景 - 网站LOGO、图标、矢量插图; - 动态图表、数据可视化; - 动画与交互图形; - 响应式界面设计(可适应不同屏幕大小)。 --- ## 📖 SVG常用元素说明 |元素|说明| |---|---| |`<svg>`|SVG画布容器| |`<rect>`|矩形| |`<circle>`|圆形| |`<ellipse>`|椭圆| |`<line>`|直线| |`<polyline>`|折线(多段连续线)| |`<polygon>`|多边形(闭合)| |`<path>`|任意复杂路径图形| |`<text>`|文本| |`<g>`|组合元素(分组)| --- ## 🚧 SVG 优缺点总结 |优点 🌟|缺点 ⚠️| |---|---| |缩放不失真|不适合表现复杂的照片、真实图像| |文件尺寸较小|对于极端复杂图形性能会降低| |易于维护、修改和生成|浏览器支持早期略有差异| |支持CSS与JS交互、动画|不适用于3D图形| --- ## 🚀 总结 **SVG** 是一种以XML为基础的图形描述语言,特别适合用来创建高质量、灵活且响应式的图形与界面,是现代前端开发者必备的一项技能。