Pagina inicial » Codificação » Styling Scalable Vector Graphic (SVG) com CSS

    Styling Scalable Vector Graphic (SVG) com CSS

    Hoje vamos continuar nossa discussão sobre Scalable Vector Graphic (SVG), e como apontamos em nosso post anterior, uma das vantagens de usar o SVG é que ele pode ser estilizado com CSS.

    Propriedades de estilo SVG

    O SVG de estilo basicamente funciona da mesma maneira que nos elementos HTML regulares, eles de fato compartilham algumas propriedades comuns também. No entanto, existem outras propriedades que se destinam especificamente para objetos SVG que têm suas próprias especificações além do CSS.

    Por exemplo, no elemento HTML regular, podemos adicionar cor de fundo com cor de fundo ou fundo Propriedade CSS. No SVG, é um pouco diferente; a cor de fundo é especificada com o preencher propriedade em vez disso. Além disso, a borda do elemento é especificada com acidente vascular encefálico propriedade e não é com o fronteira como fizemos em HTML regular, você pode ver a lista completa aqui.

    Se você tem trabalhado bastante com o editor de vetores, como o Adobe Illustrator, pode adivinhar rapidamente que o mecanismo de nomeação de propriedade no SVG é originado do editor.

    Implementação de Estilo SVG

    Podemos usar uma das seguintes maneiras de estilizar o elemento SVG;

    Atributos de apresentação

    Se você viu todas as propriedades do SVG, todas elas podem ser adicionadas diretamente no elemento para alterar a apresentação do elemento. O exemplo a seguir mostra como podemos adicionar preencher e acidente vascular encefálico propriedade diretamente em um rect elemento;

        

    O retângulo será como a imagem abaixo;

    Folha de Estilo Inline

    Nós também podemos adicionar estilo com o estilo atributo. No exemplo a seguir, também adicionaremos preencher e acidente vascular encefálico ao rect, mas desta vez vamos adicioná-lo dentro do estilo e rodar com CSS3 transformar propriedade, como assim;.

        

    O retângulo irá girar no mesmo resultado, só que agora ele também é girado;

    Folha de Estilo Interno

    Incorporar o estilo SVG dentro do estilo elemento também é possível e não é diferente de como fizemos em HTML regular. Este exemplo abaixo mostra como adicionamos estilos internos para afetar elementos SVG em .html documento.

      

    No entanto, o SVG é uma linguagem baseada em XML, então quando estamos prestes a adicionar uma folha de estilo inline em um .svg documento, precisamos colocar a declaração de estilos dentro cdata, do seguinte modo;

      

    o cdata aqui é necessário, já que o CSS pode ter > caractere que entrará em conflito com os analisadores XML. Usando cdata é altamente recomendado para incorporar estilo em SVG, mesmo que o caractere conflitante não seja fornecido na folha de estilo.

    Folha de estilo externa

    A folha de estilo externa também funciona da mesma maneira para elementos SVG .html documento.

      

    Novamente em .svg documento, precisamos encaminhar a folha de estilos externa como folha de estilo xml, igual a.

      

    Agrupando Elementos

    Elementos SVG podem ser agrupados com o elemento. Agrupar elementos nos permitirá compartilhar estilos comuns a todos os elementos do grupo, aqui está um exemplo;

         

    Tanto o retângulo como o círculo terão o mesmo resultado.

    Pensamento final

    Nós percorremos todos os assuntos essenciais sobre o estilo SVG com CSS e esta é apenas uma das vantagens de servir gráficos com SVG. Na próxima postagem vamos dar uma olhada em outra, então fique ligado.

    • Ver demonstração
    • Fonte de download