, 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); })(); Randall Van Dragt | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Dr. Randall Van Dragt

Professor Emeritus
Preserve Senior Fellow

Biography

Dr. Van Dragt is an ecologist with interests in ecosystem management and restoration. He has designed and supervised construction of several nature preserves and for more than twenty years has directed the ÃÛÌÒapp Ecosystem Preserve, a 100-acre woodland and wetland preserve on the ÃÛÌÒapp campus. For nearly two decades, he has also taught restoration ecology at the Au Sable Institute of Environmental Studies, located in Mancelona, MI. Dr. Van Dragt retired from teaching in the Biology Department at ÃÛÌÒapp in 2018. He is currently directing the restoration of a native prairie in Central Whidbey Island, Washington.

Education

  • BS in Biology, ÃÛÌÒapp College, 1969
  • MS in Wildlife Science, Cornell University, 1971
  • PhD, University of Rhode Island, 1985

Academic Interests

Research and Professional Interests

Dr. Van Dragt's research topics are Pacific lowland prairie restoration, plant succession on abandoned oil well sites in northern Michigan, and forest succession of the ÃÛÌÒapp Ecosystem Preserve. Past research projects received funding and support through the Au Sable Institute, The Nature Conservancy, and ÃÛÌÒapp.

Research

  • Land Management of ÃÛÌÒapp's Ecosystem Preserve
  • Restoration of Coastal Outwash Prairie on Whidbey Island, Washington
  • Management of the Bear Creek Watershed
  • Multi-year study of the biotic communities and prairie ecosystem at ÃÛÌÒapp's Flat Iron Lake Nature Preserve.

Research and Scholarship