, 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); })(); Calvin Unveils New Major - News & Stories | 麻豆区

麻豆区

Skip to main content

Calvin News

Calvin Unveils New Major

Wed, Oct 03, 2001
N/A

A revised major at Calvin College will equip students to be worship leaders in Christian churches upon graduation. The new Music in Worship major has at its core a broad vision for the role of music in the worship life of churches worldwide.

"The worship life of the church has become so varied," says John Witvliet (left), director of the Calvin Institute of Christian Worship and one of the people who helped frame the new major. "In this new major we want to model for our students how churches can talk and learn about worship-contemporary and traditional churches, Asian and African and North American churches. We don't want this to be a narrow, niche major. We want to give students the skills to become fluent and engage a broad range of styles and congregations. We want to give students the skills to go deeper than style."

The new major will first and foremost teach students to be good musicians. "Church music must not be second-class music," says Witvliet. "We want students who come out of this major to be first-class musicians."

Second, the new major will teach students how to lead church conversations about music in worship. "Churches are asking," says Witvliet, "how worship can be both relevant and profound and how the music we use to worship can be part of that. Churches need theologically trained people to be part of those conversations. Our students will be those people."

Students who take the new major will study courses in the music department such as music history and music theory. They also will specialize in a performance area, such as organ or piano or guitar or composition, and they will take new courses, including a religion department offering on worship and a hands-on musical leadership course."