html, body, #map { height: 100%; } .leaflet-top .leaflet-control-zoom { margin-top: 60px; margin-left: 26px; } #calendar { z-index: 100; width: 200px; height: calc(100% - 40px); position: absolute; top: 10px; right: 10px; border: 3px #888 solid; background: white; font-size: 14px; line-height: 20px; } #calendar #controls { position: absolute; top: 0; padding: 3px; background: white; } #calendar .scroll { overflow: scroll; height: calc(100%); } table.calendar { width: 100%; margin-bottom: 10px; } .calendar th, .calendar td { text-align: center; width: 14%; } .calendar td a { display: block; text-decoration: none; color: black; } .calendar td a:hover, .calendar td a.selected:hover { background: #999; color: white; } .calendar td a.selected { background: #6699ff; }