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
PacktPub.com
Contributors
Preface
Index

Basic CSS animations and transitions with SVG


One of the most interesting ways to work with SVG and CSS is with CSS animations and transitions.

  • Animations: This allow you to assign animations to elements. These animations are defined as a series of changes to CSS properties.
  • Transitions: This allow you to control the time it takes for CSS property changes to take effect. Instead of immediately changing, they transition between states. 

These are a very powerful set of features and are an important conceptual and technical addition to your SVG toolkit. 

CSS animations 

CSS animations in SVG work the same way as they do in HTML, with the addition of the ability to use the SVG-specific properties. 

 

Basic animation format

The basic pattern is as follows. SVG is simple. It's a single rect element. The CSS has two interesting components. The first is the class rect, which references one property, animationanimation; this is a shorthand property that maps to a whole series of animation-properties....