Bonjour,
J'ai un petit problème avec vue.js, que je suis en train d'apprendre. J'utilise webpack et les fichiers .vue, et je travail toujours en style scoped (c'est important pour la suite). Mon but est d'afficher dans une div
qui posséde la classe .render
du html, fournie par une chaine de caractère et de styler ce html (par exemple changer la couleur des paragraphes).
Le problème est que mon selecteur css .render p
ne sélectionne rien, le style n'est pas appliqué. Voici un exemple simplifié de code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <template> <div class="render" v-html="response"></div> </template> <script> export default { data () { return { response = "<p>je suis un paragraphe !</p>" } } } </script> <style scoped="true"> .render p { color: red /* Ne fonctionne pas oO */ } </style> <style> .render p { color: red /* Fonctionne si le style est non scoped oO */ } </style> |
Le style scoped n'est pas appliqué alors que le style non scoped lui est appliqué, ce qui est un peu embêtant. Pour l'instant je contourne le problème avec un identifiant unique et un style global mais j'aimerai bien pour garder un style interne au composant pour styler du html rendu avec la directive v-html histoire que ça soit propre (le fix du style externe n'est peut être pas possible dans tous les cas, même si dans mon projet ça ne pose pas de souçis).
Merci d'avance pour vos réponses