SVG 图标:如何设置 ViewBox 属性

已发表: 2022-12-09

为了使 svg 表现得像图标,需要将图标的 viewBox 属性设置为“0 0 24 24”,然后包含以下 CSS 规则:.icon { width: 24px; 高度:24px; 填充:当前颜色; 完成这两个步骤后,您的svg 图标现在将正确缩放到包含元素的大小,并根据当前配色方案保持其颜色。

图标在 HTML 和 CSS 中可以有多种使用方式,但在 Kaliop 的前端团队中,它们被使用。 确保在形状的边缘之间保持一点距离,尤其是那些有圆角的边缘。 如果您想对像素拟合进行微观管理,只有最佳 dpi 尺寸很重要(这样您就可以在低屏幕上获得最佳效果)。 从设计工具导出时,图像被过度切片、带有不必要的标记、元数据和其他特征是很常见的。 此外,d 属性可能具有过于精确的路径数据(以公里为单位)。 检查之前和之后的代码,并使用 SVGOMG 等工具比较它们以查看发生了什么变化。 确保我们的源代码中有必要的硬编码填充,以允许我们更改单色图标的颜色; 否则,我们将无法这样做。

对于任何手动创建的 Sprite,请保留一个包含单独 SVG 图标的文件夹。 将插图保存为单个文件,并将它们包含在页面的 alt 属性中。 如果您正在为图像制作动画,则完整的图像代码应该内嵌在您的 HTML 页面中。 根据您阅读的文章,您可能希望在图标存储库中的每个SVG 文件中包含一个文本标签。 您可以使用 JavaScript (svg4everybody,svgxuse) 对其进行填充。 页面的 HTML 代码也可用于包含您的 sprite。 每种方法都有其优点和缺点,具体取决于其使用方式。

我喜欢用这两种方法构建两个 Sprites。 许多 SVG 样式属性都是从它们的父级继承的。 重要的是要注意图标的 stroke-width 属性的值是相对于其本地坐标的。 当您的路径越过视口的限制时,一半的笔划将被切断。 该技术允许图标以两种不同的填充值(也称为两种颜色)和两条不同的路径表示。 当您拥有良好的 HTML 结构时,页面仍然可读,但您的图标会变得更大。 请将其包含在您页面的部分标题中:一篇甜美而简短的作文。

使用 SVG 元素时,始终包含宽度和高度属性。 您可以将此方法与此图标一起使用,但如果您需要在 CSS 中调整它的大小,则可能需要稍等片刻。 百分比值大致是图标宽度的百分比,它们的使用方式与方形或 sharish 图标相同。 如果我们想要渐变填充,我们需要使用 sva 渐变填充。 因为 CSS linear-gradient(...) 不能用在 SVG 填充属性中,所以我们不能使用它。

使用工具或手绘图,您可以创建 SVG 图标。 后者是更直接的选择,因为它需要更少的代码。 当您运行矢量图像程序时,您可以在虚拟绘图板上创建具有各种形状、颜色和路径操作的图标。 下一步是导出您的。

您可以使用 HTML 中的 *svg>.svg> 标签将图像保存为.svg 文件。 这是通过复制 SVG 图像的代码并将其插入到 HTML 文档的 body> 元素中来实现的。 如果一切顺利,您的网站应该与下图完全一样。

因为 SVG 是矢量图形,它们可以用来在您的网站上创建图标,是一个不错的选择。 矢量图形可以在几秒钟内缩放到任意大小而不会降低质量。 这个文件大小使加载您的网站变得简单,因为它很小并且压缩得很好,加载速度更快。

如何使我的 Svg 图标可访问?

如何使我的 Svg 图标可访问?
图片来源:freesvg

要使 SVG 图标易于访问,您需要添加标题和描述。 标题应简短且具有描述性,描述应提供有关图标的更多信息。 您还可以将 ARIA 标签添加到图标,以便为屏幕阅读器提供更多信息。

自 1999 年以来,可缩放矢量图形 (SVG) 就已经出现,但它们再次流行起来。 确定您的图像中哪些是装饰性的,哪些是信息性的是必不可少的。 当图片被认为是装饰性的时,必须使用空的或空的替代文本属性。 好的备选方案必须包含有意义的描述性词语,长度不超过 250 个字符,并且是独一无二的。 使用 <img> 标签并将其作为文件引用是使用基本的、简单的或装饰性图像的好方法。 如果您想使用更复杂或更重要的 SVG ,则应使用 HTML 标记而不是 HTML。 因此,您有更多选项可以使用 JavaScript 和 CSS 控制图像的样式和动画。

在传达替代内容时,没有明确的最爱赢得每种模式的最佳展示奖。 由于许多模式能够呈现替代内容,设计人员和开发人员在模式方面将有更多选择。 作为描述性内容的替代方案,模式 11 是屏幕阅读器和具有不同浏览器的浏览器的最佳选择。

Svg 图像:用于装饰还是用于辅助功能?

与其他一些格式不同, SVG 图像除了具有装饰性外,还可以根据读者的需要进行操作。 虽然一些屏幕阅读器可能仍会找到该元素并将其作为一个组来宣布,但没有一种简单的方法来识别它,但其他人可能不会。 因此,如果 SVG 用于装饰,最好使用 aria-hidden=true。


我应该使用 Svg 还是 Icon?

如果要自定义或制作动画,最好使用 sva 文件。 如果您负责为所有图标部分选择颜色、平滑过渡和动画,这一点尤为重要。 如果没有其他图标应在单个页面上呈现,则可以使用内联 SVG

图像是在网站上存储任何相关内容的绝佳选择,但它们不可缩放。 如果图像用于设计的特定部分,则它可能有多种分辨率。 一般来说,制作一个图像比制作多个图像更好。 图像将永远存在,但它们不像以前那样与今天的需求相关,就像图标和精灵一样。 如前所述,图像无法按比例放大。 因为这会限制你快速移动的能力。 如果你想使用最好的图像,你应该使用 JavaScript 而不是使用变通方法。

基于 Web 的排版铸造厂变得更加普遍,最终导致创建可以更轻松地使用的字形。 您可以使用流行的库(例如 Font-Awesome、Entypo 等)来扩展用户界面的外观。 您的新图标字体应该相对容易链接。 许多设计师现在正在研究矢量图形 (SVG) 等替代方案。 在浏览器中生成的代码片段可以小到一行,也可以大到一行。 您可以通过多种方式在您的页面上包含 SVG。 你们中的许多人已经知道如何使用,而其他人仅在有限的情况下有用。

使用 SVG 作为背景图像或页面链接会限制SVG 代码可用的任何附加功能。 唯一的办法就是永不放弃; 还有另一种方法。 复制和粘贴内联图像时,它可以转换为 .svga 文件。 由于其完整的响应能力,sva 作为 HTML 的替代品正变得越来越流行。 您可以手动创建它们,也可以使用 iconizr PHP 开发人员或 Grunt 应用程序用户的 grunticon 等工具创建它们。 使用 CSS:,您可以更改 Sprite 中特定 SVG 的目标类型。 无论分辨率如何,所有 SVG 都是可见的。

创建内联 SVG 时可能难以阅读并占用大量空间。 如果您更喜欢位图图像,您应该选择适合各种屏幕尺寸的多尺寸图像。 如果你想尽可能快速、轻松地在页面上显示你的图标,你也可以使用图标字体。

如果要创建将在网络上使用的徽标、图标或其他图形,则应使用 SVG 而不是 PNG。 旧版浏览器支持 PNG,但 SVG 是基于矢量的,在旧版浏览器上查看时不会降低质量。 此外,使用 SVG 可能有助于减小文件大小,因为文件会更小,因为旧浏览器无法访问任何图像。

为什么你应该在你的网站上使用 Svg 图标

使用 sva 生成的图像允许您在您的网站上创建高质量的图形。 此外,除了具有适应性之外,它们还可以用于各种应用程序,例如徽标和图像。

Svg 图标

SVG 图标是以SVG 文件格式保存的图标。 此文件格式用于二维矢量图形。 SVG 图标可以在矢量编辑程序(如 Adob​​e Illustrator)中创建。

图像和媒体文件使网站栩栩如生,从而为网站增添了生机。 带有插图的网站对访问者更具吸引力。 网页上的图标或插图质量不佳的情况并不少见。 我们将在本课中使用的 SVG 文件的 HTML 代码将有助于改进您的图标。 您还可以通过编码或使用 Illustrator 等软件制作自己的 SVG。 要复制图标的 HTML 代码,只需查找它、更改大小并保留颜色即可。 除此之外,还有可用的 SVG 标志库,例如 WorldVectorLogo。

当您输入代码时,将出现一个对话框以显示嵌入的元素。 在此部分中,您可以粘贴以前站点之一的图标代码。 通过在代码中输入宽度和高度,可以轻松更改图标的大小。

使用 SVG 创建文本时,如果在小屏幕上查看您的网站的人无法看到大图形,则必须包含替代文本。 如果您使用 SVG 在网站上或通过电子邮件显示内容,这一点尤为重要。
使用替代文本有几个优点。 第一步是用简单的英语描述图形。 如果您正在为您的企业创建徽标并希望在其中包含矢量图形,则可以在 svg> 标记中包含替代文本徽标。 如果人们有能力看到大图形,他们就会明白图形是干什么用的,即使他们看不到也能看到。
除了替代文本外,还可以更详细地描述图形。 如果您正在为您的企业创建徽标,您可能希望包含矢量图形,因此如果您这样做,替代文本查看徽标将包含在“svg”标签中。 人们将能够理解如何查看图形,如果他们没有查看大图形的能力,也将能够查看它。
替代文本也可用于提供有关图形的附加信息。 如果您正在为您的企业创建徽标并希望包含矢量图形,那么在 svg> 标记中使用“有关详细信息,请参阅 *****link>”的替代文本是一个很好的起点。 它将告知用户他们可以通过多种方式查找有关图形的信息,并让他们选择是否查看大图形。

什么是 Svg 图标?

什么是 SVG 图标? 术语“SVG”(可缩放矢量格式)是指允许缩放的矢量图形文件格式。 矢量图形在基于 XML 的标记中进行描述。 这意味着 SVG 图像可以基于 CSS、基于 Javascript,甚至基于 DOM,具体取决于上下文。

带有 Svg 图标和文本的按钮

带有 svg 图标和文本的按钮允许您轻松地向您的按钮添加图标,并且能够使用 CSS 为图标设置样式。 您还可以向按钮添加文本以使其更具描述性。

当您在 CodePen 中编写时,HTML 编辑器中的文本将显示在基本 HTML5 模板中。 CSS 可以从网络上的任何样式表应用到您的笔。 为了提供更好的跨浏览器支持,对属性和值使用供应商前缀是一种常见的做法。 您可以使用脚本从 Internet 上的任何位置向您的 Pen 写信。 只需在 Pen 中输入 JavaScript 的 URL,在您按照您希望它出现的顺序配置它之后,就会添加该 URL。 如果您链接的脚本包含我们的应用程序将使用的文件扩展名,我们将尝试在提交之前对其进行处理。

Svg 图标的多种用途

基于矢量技术的图像通常用于 Web 应用程序和服务,并且可以轻松修改它们以适应不同的应用程序和服务。

Svg 作为按钮反应

svg as button react 允许您向您的网站添加交互元素。 它使您的网站更加用户友好和吸引人。 您可以使用它向您的网站添加按钮、链接和其他交互元素。

在 CodePen 中,您在 HTML 编辑器中编写的内容将进入包含在基本 HTML5 模板中的 HTML5 body 标签。 这是您可以创建将对整个文档产生重大影响的类的位置。 供应商之间的常见做法是将供应商前缀应用于其操作所需的属性和值。 在互联网上,脚本可以很容易地应用到您的笔上。 一旦您包含了 URL,我们就会把它放在这里,我们会按照您放置它们的顺序添加它。 如果您链接的脚本的文件扩展名是预处理器,我们将尝试在应用前对其进行处理。

Svg 图标可缩放矢量图形

SVG 是一种基于 XML 的矢量图像格式,用于支持交互性和动画的二维图形。 SVG 规范是万维网联盟 (W3C) 自 1999 年以来制定的开放标准。SVG 图像及其行为在 XML 文本文件中定义。 这意味着它们可以被搜索、索引、编写脚本和压缩。 作为 XML 文件,SVG 图像可以使用任何文本编辑器创建和编辑,但更常见的是使用绘图软件创建。

与可用于生成矢量图形的 XHTML 一样,SVG 可用于生成矢量图形。 简单的 SVG 文档本质上只是形状的集合,基本元素是根元素。 许多绘图应用程序(例如 Inkscape)使用 Adob​​e Illustrator 的本机文件格式。 它在现代和旧版本的 Firefox 中都可用。 在开始之前,建议您对 XML 或其他标记语言(如 HTML)有基本的了解。 在开始之前,请阅读一些 XML 指南。 即将推出的 SVG 版本,新的完整版本,于今年早些时候发布,但在即将推出的 2.0 版本中被撤回。

光栅图像和矢量图像的区别

JPEG、PNG 和 GIF 等光栅图像不是矢量图像,而是矢量文件。 因此,SVG 始终以 100% 的分辨率呈现,而 JPEG、PNG 和 GIF 则不会。 此外,它是一种类似于 XHTML 的 XML 格式,可用于创建矢量图形,如下所示。 因此,它可用于以多种方式创建图像,包括指定所有所需的线条和形状、修改现有的光栅图像或将它们组合起来。
使用 SVG 可以获得相同的好处,但它使用的是形状、数字和坐标,而不是像素。 因此,无论屏幕大小如何,无论缩放还是放大,您都将始终收到高质量的图像。 因为 SVG 可以在任何设备上使用,无论分辨率如何,它也可以在考虑质量的情况下使用。