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

麻豆区

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); })(); Volunteer and Support Alumni Association | 麻豆区

麻豆区

Skip to main content

Volunteer and Support

University Chapel under blue skies and clouds.

Alumni in action

Calvin students stand on your shoulders. Because you have paved the way, they have even greater opportunities to impact the world for Christ. Consider how you might bless a student through one of the following opportunities.


Support Financially

Calvin Annual Fund

Gifts of all sizes are working together to keep tuition costs down and make Calvin a reality for our 4,000 students. Choose what your donation supports鈥攁rts, student life, community care, and more.

Student Scholarships

Impact, encourage and inspire a student through a donor-funded scholarship. Your support helps students who choose to learn and grow at Calvin.

Spark Fund

A gift to The聽Spark Fund is a simple way to give back. Your donation will help the Alumni Association fulfill its mission while also helping to offset the cost of printing and shipping聽Spark magazine each year.

Support Practically

Recommend a Senior

Every Calvin alum knows a high school senior who would benefit from Calvin's world-class, liberal arts education. Impact their future through your recommendation!

Post a Job Opportunity

Use Handshake to post your job openings or internships. These opportunities can be the first step to success for Calvin students and alums!

Submit Award Nomination

Recognizing outstanding alumni and friends for their commitment, faith, and service. We receive nominations for the Distinguished Alumni Award and Young Alumni Award.