маркер
Свойство marker CSS указывает на маркер, который будет нарисован на первых, средних и последних вершинах пути элемента; то есть, на всех его вершинах. Маркер должен быть определён с помощью элемента SVG <marker>, и может быть сосланы только со значением <url>. Значение свойства CSS переопределяет любые значения атрибутов marker-start, marker, и marker-end в SVG.
Для многих фигур, поддерживающих маркеры, первые и последние вершины находятся в одном месте: например, в левом верхнем углу прямоугольника <rect>. В таких фигурах, если определены маркеры начала и конца, будут нарисованы два маркера в этой точке, хотя они могут быть не направлены в одном направлении.
Для средних вершин направление каждого маркера определяется как направление, находящееся посередине между направлением в конце предыдущего сегмента пути и направлением в начале следующего сегмента пути. Это можно представить как векторное произведение векторов, определённых двумя направлениями пути.
Примечание: Свойство marker будет действовать только для элементов, которые могут использовать маркеры SVG. См. marker-start для списка.
Синтаксис
marker: none; marker: url(markers.svg#arrow); /* Global values */ marker: inherit; marker: initial; marker: revert; marker: revert-layer; marker: unset;
Значения
none-
Это означает, что маркеры не будут нарисованы на каждой вершине пути элемента.
<marker-ref>-
Ссылка
<url>, которая ссылается на маркер, определённый элементом SVG<marker>, который будет нарисован на каждой вершине пути элемента. Если ссылка на URL неверна, маркер на вершинах пути не будет нарисован.
Формальное определение
| Начальное значение | как каждое из свойств сокращения:
|
|---|---|
| Применимо к |
<circle>, <ellipse>, <line>, <path>, <polygon>, <polyline>, и <rect> элементы в svg
|
| Наследуется | да |
| Вычисленное значение | как указано |
| Тип анимации | дискретный |
Формальный синтаксис
marker =
none |
<marker-ref>
<marker-ref> =
<url>
<url> =
<url()> |
<src()>
<url()> =
url( <string> <url-modifier>* ) |
<url-token>
<src()> =
src( <string> <url-modifier>* )
Пример
<svg viewBox="0 0 240 120" xmlns="http://www.w3.org/2000/svg">
<defs>
<marker
id="triangle"
viewBox="0 0 10 10"
markerWidth="10"
markerHeight="10"
refX="1"
refY="5"
markerUnits="strokeWidth"
orient="auto">
<path d="M 0 0 L 10 5 L 0 10 z" fill="#f00" />
</marker>
</defs>
<polyline
id="test"
fill="none"
stroke="black"
points="20,100 40,60 70,80 100,20 130,10 150,10 170,20 170,100 120,100" />
</svg>
polyline#test {
marker: url(#triangle);
}
Спецификации
| Спецификация |
|---|
| Scalable Vector Graphics (SVG) 2 # MarkerShorthand |
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
marker |
≤80 | ≤80 | ≤72 | 67 | ≤13.1 | 80 | 79 | 57 | ≤13.4 | 13.0 | 80 |
См. также
marker-startmarker-end- Атрибут SVG
marker
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/marker