Ask Your Question

Revision history [back]

You can create HTML SVG texts with dissimilar background colors using:

  1. The <rect> element: You can create a <rect> element with the desired background color and put the <text> element on top of it.

For example:

<svg>
  <rect x="0" y="0" width="100" height="50" fill="red"></rect>
  <text x="50" y="30" fill="white" text-anchor="middle">Hello, World!</text>
</svg>

This will create a SVG text with a red background and white text.

  1. The <foreignobject> element: You can use the <foreignobject> element to embed HTML elements inside SVG.

For example:

<svg>
  <foreignObject x="0" y="0" width="100" height="50">
    <div style="background-color: red; color: white; text-align: center;">Hello, World!</div>
  </foreignObject>
</svg>

This will create a SVG text with a red background and white text using CSS in a <foreignobject> element.

Note: Not all web browsers support the <foreignobject> element, so it may not work in all situations.