IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Fichiers html, css et svg


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Santé

    Informations forums :
    Inscription : Août 2009
    Messages : 86
    Par défaut Fichiers html, css et svg
    Bonjour tous,
    je bute sur un problème malgré mes différentes recherches sur le net.
    J'ai pour un petit projet un fichier index.html, un fichier style.css et une icone test.svg (téléchargée sur la toile)

    Dans mon fichier html, j'ai un code qui ressemble à ça (je l'ai simplifié pour l'exemple) :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <head>
      <link rel="stylesheet" href="style.css">
    </head>
    <body>
      <div>
        <img src="test.svg"></img>
      </div>
    </body>

    Mon icone affiche :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="utf-8"?>
    <svg width="800px" height="800px" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
      <path d="M344.578 493.54l-117.214-2.024L118.9 33..........."/>
    </svg>
    (les .......... sont juste là pour raccourcir le code )

    J'aimerai maintenant changer les propriétés de mon icone via du CSS. Dans mon fichier svg j'ai donc rajouter, dans la balise path une class :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="utf-8"?>
    <svg width="800px" height="800px" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
      <path class="mon_icone" d="M344.578 493.54l-117.214-2.024L118.9 33..........."/>
    </svg>

    et dans mon fichier CSS j'ai mis ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .svg .mon_icone {
      fill: white;
      width: 60px;
    }
    .svg .mon_icone:hover {
      fill: red;
    }
    mais rien ne fonctionne. J'ai aussi essayé de mettre l'appel de la class dans le HTML
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="test.svg" class="mon_icone"></img>

    J'ai vu des tuto avec la copie du code SVG directement dans le html ou la modification directe des propriétés de l'icone directement dans le fichier SVG mais je souhaiterai resté avec des fichiers distincts

    Merci d'avance.

    a+

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonjour,
    ton image SVG en tant que source d'un élément <img> est non modifiable, c'est considéré comme une « bitmap ».

    Si tu veux pouvoir modifier certaines zones, au survol par exemple, il te faut le faire dans le CSS de ton fichier SVG puis l'intégrer dans ta page dans un élément <object>.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <object type="image/svg+xml" data="ton-image-svg.svg"></object>

    mais je souhaiterai resté avec des fichiers distincts
    mais pourquoi tant de haine , si c'est pour des icones tu peux également te servir d'un élément <use> qui te permettes d'écrire des trucs comme :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <svg class="svg-icon"><use href="#ico-previous"></svg>

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Santé

    Informations forums :
    Inscription : Août 2009
    Messages : 86
    Par défaut
    Super je vais essayer ça. Merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. mettre plusieurs css pour un fichier html
    Par Emcy dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 07/03/2008, 10h24
  2. Réponses: 7
    Dernier message: 09/08/2007, 11h55
  3. Mise en cache de fichiers html php et css
    Par 12monkeys dans le forum Balisage (X)HTML et validation W3C
    Réponses: 29
    Dernier message: 06/07/2007, 09h51
  4. "Incorporation" d'un CSS dans un fichier html
    Par kalan dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 31/08/2005, 17h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo