При настройке стиля карты важно понимать, как оформление различных объектов карты может повлиять на другие стили на ней. Существует несколько перекрывающихся слоёв:
Базовая карта : при создании стиля карты первым отображается стиль базовой карты, то есть карты по умолчанию. Все элементы карты, которые вы не настраиваете, сохраняют базовый стиль.
Стили карты : пользовательские стили переопределяют стили базового слоя карты. На этом изображении пользовательский стиль карты переопределяет цвет городских территорий (голубой), а дорог (тёмно-синий).
Элементы стиля : у каждого объекта карты есть один или несколько элементов стиля, которые можно настроить. На этом изображении цвет заливки полигона объекта городской зоны карты — аквамариновый, а цвет заливки дорожной сети — синий.
Иерархия объектов карты
В рамках стиля карты объекты карты организованы иерархически: четыре основных объекта карты находятся наверху, а все остальные объекты карты расположены под ними в логической иерархии. По умолчанию объект карты наследует стили элементов объекта карты, расположенного выше в иерархии (его родительского объекта); однако вы можете переопределить стиль верхнего уровня, установив один или несколько элементов стиля для объектов карты, расположенных ниже него (дочерних объектов карты). Подробнее об иерархии объектов карты см. в разделе Что можно стилизовать на карте .
Каждый объект карты имеет один или несколько элементов или частей объекта карты, которые можно стилизовать. Например, цвет заливки многоугольника (формы объекта карты) является элементом, как и цвет обводки текстовой метки. Каждый элемент стилизуется отдельно, а любой элемент, к которому не применяется стиль, сохраняет стиль по умолчанию. Поскольку элементы являются отдельными, можно стилизовать цвет заливки для текста метки, оставив цвет обводки (контура) по умолчанию (или унаследовав его от родительского стиля).
Вот несколько полезных рекомендаций для понимания того, как работают иерархия стилей и наследование.
Дочерние стили по умолчанию наследуют от родительского : чтобы все дочерние элементы карты унаследовали стиль, задайте стиль для родительского элемента карты и оставьте дочерний стиль по умолчанию.
Пользовательские дочерние стили переопределяют родительские : чтобы переопределить родительский стиль, задайте пользовательский стиль для дочернего элемента.
Элементы стиля независимы : элементы стиля, которые можно задать для объекта карты (например, многоугольник, значок метки, а также заливка и обводка текста метки), независимы друг от друга. Если задать цвет многоугольника, но оставить значок без изменений, стиль многоугольника переопределит родительский стиль, но значок унаследует родительский стиль или стиль по умолчанию.
Отключите видимость, чтобы скрыть объекты карты : если вы хотите видеть на карте только один объект, вам придется отключить видимость для всего остального.
Пример иерархии и наследования
Вот пример того, как работает наследование и иерархия.
Выберите объект карты верхнего уровня Natural и установите для параметра Polygon Fill жёлтый цвет . Это приведёт к тому, что все полигоны объектов карты уровня Natural станут жёлтыми:
Вам нужно, чтобы Land cover , который находится под Natural , также был желтым, поэтому вы оставляете его без стиля, и он наследует стиль от Natural .
Если вы хотите, чтобы леса были зелёными, в разделе «Почва » откройте «Лес» и окрасьте его полигон в зелёный цвет. Этот пользовательский дочерний стиль переопределяет стили «Почва» и «Естественный» .
Если вы хотите, чтобы лед отображался бледно-голубым цветом, то в разделе Land Cover (Покров Земли ) откройте Ice (Лед ) и окрасьте его многоугольник в бледно-голубой цвет.
И наконец, если вы хотите, чтобы вода была цвета морской волны, выберите Natural > Water и раскрасьте её полигон в аквамариновый цвет. Установка дочернего стиля Water переопределяет родительский стиль для Natural .
Выполните аналогичную процедуру, чтобы выделить на карте необходимые вам элементы.
[null,null,["Последнее обновление: 2025-08-27 UTC."],[],[],null,["Select platform: [Android](/maps/documentation/android-sdk/cloud-customization/map-hier \"View this page for the Android platform docs.\") [iOS](/maps/documentation/ios-sdk/cloud-customization/map-hier \"View this page for the iOS platform docs.\") [JavaScript](/maps/documentation/javascript/cloud-customization/map-hier \"View this page for the JavaScript platform docs.\") [Web Service](/maps/documentation/maps-static/cloud-customization/map-hier \"View this page for the Web Service platform docs.\")\n\n\u003cbr /\u003e\n\nWhen you customize a map style, it helps to understand how styling different map\nfeatures may affect other styles on the map. There are several layers that\noverlap:\n\n- **The base map**: When you start creating a map style, the initial\n you see is the style of the base map; that is, the default map. Any map\n features you don't customize retain the base map styling.\n\n- **Map styles**: Custom styles override the styles on the base map layer.\n In this image, the custom map style overrides the urban areas as aqua\n and roads as dark blue.\n\n- **Style elements**: Each map feature has one or more style elements that\n you can customize. In this image, the urban areas map feature polygon\n fill color is styled as aqua, and the road network fill color\n is styled as blue.\n\nMap feature hierarchy\n\nWithin a map style, map features are organized hierarchically, with 4 broad\nmap features at the top, and all other map features arranged beneath them in\na logical hierarchy. By default, a map feature inherits the element styles\nfor the map feature above it in the hierarchy (its parent); however, you\ncan override the top level style by setting one or more of the style elements\nfor map features underneath it (child map features). For details on the map\nfeature hierarchy, see [What you can style on a map](/maps/documentation/javascript/cloud-customization/taxonomy).\n\nEach map feature has one or more elements, or parts of the map feature, that\nyou can style. For example, the fill color for the polygon (the map feature\nshape) is an element, as is the stroke color for the text label. You style\neach element separately, and any element you don't style retains the default\nstyle. Since elements are separate, you can style the fill color for label\ntext, and leave the stroke (outline) color as the default (or inheriting\nfrom a parent style).\n\nHere are some helpful guidelines in understanding how style hierarchy and\ninheritance work.\n\n- **Default child styles inherit from the parent**: To have all\n child map features inherit a style, set the style for the parent map feature,\n and leave the child style as the default.\n\n- **Custom child styles override the parent**: To override the parent style,\n set a custom style on the child feature.\n\n- **Style elements are independent**: The style elements you can set for a\n map feature (for example, the polygon, the label icon, and the label text\n fill and stroke) are independent from each other. If you set the polygon\n color, but leave the icon alone, the polygon style overrides the parent\n style, but the icon inherits the parent or default style.\n\n- **Turn off Visibility to hide map features**: If you want to see only one\n thing on your map, you have to turn off visibility for everything else.\n\n | **Note:** When you hide map features or make them semi-transparent, you may expose boundary inaccuracies. Map feature boundaries are not always precise, but are adjusted to look correct when all layers are visible. For more details, see [Manage styles that overlap](/maps/documentation/javascript/cloud-customization/overlap).\n\nHierarchy and Inheritance Example\n\nHere is an example of how inheritance and hierarchy works.\n\n1. Select the top-level map feature of **Natural** , and set the\n **Polygon Fill color** to yellow. This styles all polygons for map\n features under **Natural** to be yellow:\n\n2. You want **Land cover** , which is under **Natural** , to also be yellow,\n so you leave it unstyled, and it inherits the style from **Natural**.\n\n3. You want forests to be green, so under **Land cover** , you open **Forest** ,\n and color its polygon green. This custom child style overrides the\n styles for **Land cover** and **Natural**.\n\n4. You want ice to be shown a pale aqua, so also under **Land cover** , you\n open **Ice**, and color its polygon pale aqua.\n\n5. And last, you want water to be aqua, so you select **Natural\\\u003eWater** , and\n color its polygon aqua. Setting the child style **Water** overrides the parent\n style for **Natural**.\n\nFollow a similar process to highlight the map features for your needs."]]