, 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); })(); GERM 320: May in Germany | 麻豆区

麻豆区

Skip to main content

GERM 320: May in Germany

Apply
Discover the cultural riches of Berlin, one of the most exciting capitals of Europe, as well as the the Rhine River Valley, as you learn or improve your German over three weeks in May.

Students fly first to the Rhine Valley for a few days of exploration before taking the high-speed train to Berlin. Students then spend two weeks in Berlin, taking morning classes at the world-renowned Goethe Institute and exploring the German capital in the afternoon and evening. Lodging in Berlin is in private homes organized by the Goethe Institute. Course goals include growth in intercultural sensitivity, gains in mastery of German, and increased understanding of various religious, political, and cultural phenomena of Germany. Students will be assessed on their participation in the Goethe Institute courses, director-led excursions, and the submission of at least two analytic journal entries focusing on cultural issues.

  • Credits: 4
  • Core: Global Regions and Cultures

Basic Information

Location

Germany

Program Type

Summer

Cost

$6300-$7200 (Estimate)