Rectangle de la bordure autour du texte SVG
Essayer de mettre un cadre autour de certains SVG texte, et j'ai obtenu des résultats variables.
HTML: (avec le muet classe)
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<text x="37.5" y="37.5" class="ablate-x mute">X</text>
</svg>
CSS:
.ablate-x {
font-size: 24px;
color: gray;
opacity: 0.5;
font-weight: 900;
cursor: hand;
cursor: pointer;
}
.mute {
opacity: 1;
fill: red;
stroke: red;
stroke-width: 2px;
/* we tried border: 2px solid red; but it didn't work */
}
D3.js:
.on("click", function(d) {
var selection = d3.select(this);
selection.classed("mute", (selection.classed("mute") ? false : true));
})
Ici, nous avons le X
sans le muet classe
Ici, nous avons le X
avec le muet classe mais sans la frontière
C'est ce que nous essayons de passer la frontière pour ressembler à
Note: sa mère est un groupe, pas un élément HTML.
JS Fiddle:
http://jsfiddle.net/chrisfrisina/yuRyr/5/
OriginalL'auteur chris Frisina | 2013-06-20
Vous devez vous connecter pour publier un commentaire.
Éléments SVG ne prennent pas en charge le CSS de la frontière de la propriété que vous avez découvert. Vos options sont
<rect>
autour du texte comme une frontière<svg>
élément si son parent est un élément html. L'extérieur<svg>
élément est un élément remplacé et soutenir le CSS bordure de propriété.OriginalL'auteur Robert Longson
Pour dessiner un rectangle autour du texte sur un clic, mettre à jour le code:
Sur ce html:
rect
premier. Je trouve cette solution bien plus élégante. Merci!OriginalL'auteur Alvin K.