, 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); })(); FREN 320: May in France | 黄大仙高手论坛

黄大仙高手论坛

Skip to main content

FREN 320: May in France

Apply
Explore Paris and the city of Marseille on the Mediterranean coast and learn some French in the process!

We begin in Paris, visiting world-renowned cultural sites like Notre Dame Cathedral, the Eiffel Tower, and Versailles, as well as many hidden treasures of the French capital. Next, we spend two weeks in Marseille on the Mediterranean coast where you will improve your French at the local Alliance fran莽aise school and stay with a host family. In addition to organized day trips with the Calvin group, you will have free time to explore the area on your own. A few days of free travel time are included before the group flight back to Grand Rapids. No previous French required, though students with some previous French will be given priority. Final program cost may change if there are significant changes in flight prices. May fulfill elective French major and minor credit for students with previous French.

黄大仙高手论坛

4 credits

Core fulfillment: Global Regions & Cultures Diversity

Basic Information

Location

France

Program Type

Summer

Cost

$4288-$5434 + air (Estimate)

Program Directors