Alignment loss

by Tristen Brown

HTML

<link rel="stylesheet" href="https://api.tiles.mapbox.com/mapbox-gl-js/v1.2.0/mapbox-gl.css">
<script src="https://api.tiles.mapbox.com/mapbox-gl-js/v1.2.0/mapbox-gl.js"></script>
<div id="map"></div>

CSS

body {
    margin: 0;
    padding: 0;
  }

  #map {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
  }

JavaScript

mapboxgl.accessToken = 'pk.eyJ1IjoidHJpc3RlbiIsImEiOiJjajZoOXU4Z2kwNnppMnlxd2d6bTFvZ2xtIn0.PP7AoUakMfeqdXFHdsY0oA';

const style = {
  version: 8,
  center: [-78.822, 43.7187],
  zoom: 6,
  sources: {
    composite: {
      url: 'mapbox://mapbox.mapbox-streets-v8',
      type: 'vector'
    }
  },
  sprite: 'mapbox://sprites/tristen/cjwurvssn93s01cny9t91anji/a3zx8crhca28a1j1ljgwyyo1z',
  glyphs: 'mapbox://fonts/tristen/{fontstack}/{range}.pbf',
  layers: [{
      id: 'land',
      type: 'background',
      paint: {
        'background-color': 'hsl(35, 32%, 91%)'
      }
    },
    {
      id: 'water',
      type: 'fill',
      source: 'composite',
      'source-layer': 'water',
      paint: {
        'fill-color': 'hsl(196, 80%, 70%)'
      }
    },
    {
      id: 'label',
      type: 'symbol',
      source: 'composite',
      'source-layer': 'place_label',
      layout: {
        'text-size': 18,
        'text-field': ['get', 'name'],
				'icon-image': 'marker-15',
        'text-variable-anchor': [
          'step',
          ['zoom'],
          ['literal', ['left', 'right', 'bottom', 'top']],
          11,
          ['literal', ['center']]
        ],
        'text-justify': 'auto',
				'text-radial-offset': 0.25
      },
      paint: {
        'text-color': 'black',
				'icon-opacity': ['step', ['zoom'], 1, 11, 0]
      }
    }
  ]
};

const map = new mapboxgl.Map({
  container: 'map',
  style
});