, 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); })(); Media Center - About ÃÛÌÒapp | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Media Center

News, Media, and Publications

ÃÛÌÒapp is abuzz with activity around the clock. Stay connected to what’s happening in our community through news, publications, videos, social media, newsletters, and more.

News and Stories
Your news source for updates from ÃÛÌÒapp.

Spark
The quarterly alumni magazine of ÃÛÌÒapp.


News updates, feature stories, and stats about ÃÛÌÒapp athletic teams.

Ways to Connect

Stay in touch with ÃÛÌÒapp through these channels:

Social media

Our visual mashup of #calvinuniversity, or visit ÃÛÌÒapp on: , , , LinkedIn, and .

Newsletters

Subscribe to ÃÛÌÒapp-Parents or to get email updates from ÃÛÌÒapp.

Photos

Browse the

Student media

Read ÃÛÌÒapp’s student newspaper , the twice-yearly literary magazine or Dialogue.

Media relations

Contact ÃÛÌÒapp’s Media Relations office.

Video

Watch videos on and .

MarCom

Visit Marketing and Communications for branding guidelines, trademark licensing, digital resources, and more.