📜  带有引导程序的响应式 svg (1)

📅  最后修改于: 2023-12-03 15:39:24.835000             🧑  作者: Mango

带有引导程序的响应式 SVG

SVG(Scalable Vector Graphics)是一种可缩放的图形格式,具有分辨率无关性和矢量图形的特点。SVG图像可以动态更改,响应式设计也能够使得它在不同大小的屏幕上呈现同样的效果。本文将介绍如何创建一个带有引导程序的响应式SVG图像。

准备工作

在创建SVG图像之前,我们需要一个文本编辑器和一个浏览器,以便查看和测试我们的SVG。为了更好地进行编辑和开发,可以考虑使用一些编辑器和浏览器扩展。例如,Visual Studio CodeSVG Viewer

创建SVG

首先,我们需要创建一个新的HTML文件,并在文件中添加以下代码段:

<!DOCTYPE html>
<html>
<head>
  <title>Bootstrap Responsive SVG</title>
</head>
<body>
  <svg viewBox="0 0 100 100"></svg>
</body>
</html>

这是一个非常基本的HTML框架,它创建了一个带有viewBox属性的SVG元素。

  • viewBox: 它规定了SVG元素的位置和尺寸。该属性值的格式为"x y width height"。在本例中,SVG元素的位置和尺寸均为(0, 0, 100, 100)。我们可以在SVG元素中添加一些形状并使用viewBox属性对其进行布局和定位。

接下来,我们可以使用任何矢量图形软件(如 Adobe IllustratorInkscape)来创建我们的SVG形状。在创建形状时,请确保它们属于同一组,并将它们导出为SVG格式。

将其导出后,我们可以将代码添加到我们的HTML文件中:

<!DOCTYPE html>
<html>
<head>
  <title>Bootstrap Responsive SVG</title>
</head>
<body>
  <svg viewBox="0 0 100 100">
    <rect x="0" y="0" width="50" height="50" fill="#f00"></rect>
    <circle cx="75" cy="25" r="20" fill="#0f0"></circle>
    <polygon points="25,75 75,75 50,100" fill="#00f"></polygon>
  </svg>
</body>
</html>

这里,我们添加了三个形状:

  • 矩形(<rect>):x属性为0,y属性为0,宽为50,高为50,用红色填充。
  • 圆形(<circle>):cx属性为75,cy属性为25,半径为20,用绿色填充。
  • 多边形(<polygon>):三个点的坐标分别为25,75、75,75和50,100,用蓝色填充。

现在,在浏览器中加载HTML文件,我们应该会看到一个带有三个形状的SVG图像。

响应式设计

SVG图像的一个优点是它可以轻松地调整大小以适应不同大小的屏幕。我们可以通过在viewBox属性中定义SVG元素的尺寸和宽高比,使其始终适应其父元素的大小。

我们可以使用Bootstrap框架来创建我们的响应式SVG。在我们的HTML文件中,我们可以添加以下代码:

<!DOCTYPE html>
<html>
<head>
  <title>Bootstrap Responsive SVG</title>
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
  <style>
    .svg-container {
      height: 200px;
    }
  </style>
</head>
<body>
  <div class="container">
    <div class="row">
      <div class="col-md-6">
        <div class="svg-container">
          <svg viewBox="0 0 100 100">
            <rect x="0" y="0" width="50" height="50" fill="#f00"></rect>
            <circle cx="75" cy="25" r="20" fill="#0f0"></circle>
            <polygon points="25,75 75,75 50,100" fill="#00f"></polygon>
          </svg>
        </div>
      </div>
      <div class="col-md-6">
        <div class="svg-container">
          <svg viewBox="0 0 100 100">
            <circle cx="50" cy="50" r="40" fill="#f90"></circle>
          </svg>
        </div>
      </div>
    </div>
  </div>
</body>
</html>

这里,我们使用了Bootstrap的网格系统,将我们的SVG容器分为两列。我们还定义了一个名为svg-container的类,它使SVG容器的高度为200px。通过这样做,我们可以确保SVG图像与响应式设计的其余网格系统保持一致。

我们还更新了viewBox属性,以使其始终适应父容器的大小。

在浏览器中加载HTML文件,我们现在可以看到两个SVG容器,它们在不同大小的屏幕上都得到了良好的适应性。

结论

本文介绍了如何创建带有引导程序的响应式SVG图像。我们使用HTML和SVG标记创建SVG图像,并使用CSS和Bootstrap框架进行响应式设计,以便在不同大小的屏幕上都获得良好的适应性。