Book Image

Mastering SVG

By : Rob Larsen
Book Image

Mastering SVG

By: Rob Larsen

Overview of this book

SVG is the most powerful image format in use on the web. In addition to producing resolution-independent images for today's multi-device world, SVG allows you to create animations and visualizations to add to your sites and applications. The simplicity of cross-platform markup, mixed with familiar modern web languages, such as CSS and JavaScript, creates a winning combination for designers and developers alike. In this book, you will learn how to author an SVG document using common SVG features, such as elements and attributes, and serve SVG on the web using simple configuration tips for common web servers. You will also use SVG elements and images in HTML documents. Further, you will use SVG images for a variety of common tasks, such as manipulating SVG elements, adding animations using CSS, mastering the basic JavaScript SVG (API) using Document Object Model (DOM) methods, and interfacing SVG with common libraries and frameworks, such as React, jQuery, and Angular. You will then build an understanding of the Snap.svg and SVG.js APIs, along with the basics of D3, and take a look at how to implement interesting visualizations using the library. By the end of the book, you will have mastered creating animations with SVG.
Table of Contents (17 chapters)
Title Page

Styling inline SVG

This section is going to focus on some of the many ways you can manipulate inline SVG elements with CSS. This section will not be exhaustive, but will cover many of the most common properties that you'll use when working with SVG. 

These fall into two classes of properties: 

  • CSS properties that you're probably familiar with from working with CSS and HTML, and that will also work with SVG
  • CSS properties that are specific to SVG itself

Let's start with the familiar CSS properties. 

Using common CSS properties to manipulate SVGs

This section is going to focus on common CSS properties that work with SVG. With a couple of exceptions, most of the ones you'll actually pay attention to are related to text.

Basic font properties

If you've worked with CSS for any length of time, you've likely manipulated the font face and style for an element. Those same properties are available for SVG elements. 

The following code sample shows four text elements. The first shows no styles applied to it...