Définir une largeur de trait: 1 sur un élément dans SVG place un trait de chaque côté du rectangle.
Comment placer une largeur de trait sur trois côtés seulement d’un rectangle SVG?
Si vous avez besoin d’un coup ou d’un coup, vous pouvez également utiliser stroke-dasharray , en faisant correspondre les tirets et les espaces aux côtés du rectangle.
rect { fill: none; stroke: black; } .top { stroke-dasharray: 0,50,150 } .left { stroke-dasharray: 150,50 } .bottom { stroke-dasharray: 100,50 } .right { stroke-dasharray: 50,50,100 }
Vous ne pouvez pas modifier le style visuel de différentes parties d’une même forme dans SVG (absence du module Vector Effects non encore disponible). Au lieu de cela, vous devrez créer des formes distinctes pour chaque trait ou autre style visuel que vous souhaitez modifier.
Spécifiquement pour ce cas, au lieu d’utiliser un élément
ou
, vous pouvez créer un
ou un
qui ne couvre que trois côtés du rectangle:
Vous pouvez voir l’effet de ceux-ci en action ici: http://jsfiddle.net/b5FrF/3/
Pour plus d’informations, reportez-vous à la section
et aux formes
plus puissantes mais plus confuses.
Vous pouvez utiliser une polyligne pour les trois côtés frappés et ne pas simplement placer le trait sur le rectangle. Je ne pense pas que SVG vous permette d’appliquer différents traits à différentes parties d’un chemin ou d’une forme. Vous devez donc utiliser plusieurs objects pour obtenir le même effet.