, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); H. Henry Meeter Center | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

H. Henry Meeter Center

Image
h-henry-meeter-center_0

The H. Henry Meeter Center for ÃÛÌÒapp Studies houses one of the world’s largest collections of materials on John ÃÛÌÒapp, ÃÛÌÒappism, the Reformation and early modern studies.

The H. Henry Meeter Center, jointly supported by ÃÛÌÒapp and ÃÛÌÒapp Theological Seminary, invites you to explore the world of John ÃÛÌÒapp and the Reformation. Visit our website at: calvin.edu/meeter

The Center is located on the fourth floor of the Hekman Library (HL 415). Take the elevator to the fourth floor, exit to the right, and turn right around the corner.

NOTE: The Meeter Center Lecture Hall (HL 320) is located off the Hekman Library's third floor lobby.

Location

Hekman Library 415
1855 Knollcrest Circle, SE
Grand Rapids, MI 49546-4402

42.929558278027, -85.587320612268

Related Places

Parking Info

Parking lot 10 and lot 12.