, 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); })(); Home In A Wilderness Fort: Copper Harbor - News & Stories | 麻豆区

麻豆区

Skip to main content

Calvin News

Home In A Wilderness Fort: Copper Harbor

Wed, Jul 19, 2006
Phil de Haan

A Calvin College professor of English emeritus has written a book about one of her favorite vacation spots.

Charlotte Otten has penned a variety of books during both her career as an active professor and in the years since her retirement, including everything from traditional children's books to an examination of werewolves!

Her latest offering is a children's historic novel called ".."

The book details the adventures of Josette, a girl of 10 who journeys to Michigan's in 1844 with her sister and brother-in-law, who has been assigned as a military officer to help build . There she lives an adventuresome life, while learning about the state's native people (one of her best friends is an Indian girl named Maria who rescues her from a bear), the wilderness and herself!

From many journeys

Otten began visiting Copper Harbor two decades ago and often included a visit to Fort Wilkins in her stay up north. Eventually she was inspired to write about life at the time the fort was built. Her early efforts on the book included a significant amount of research and she ran the manuscript past historians to ensure that it was historically accurate.

One of those historians was Thomas Friggens, the regional manager for the , an agency within the Michigan Department of History, Arts and Libraries. Friggens told the Associated Press that Otten's book shows a remarkable attention to detail. "It gives a flavor of life at Fort Wilkins and gives a flavor for life in the pioneer era of the Keweenaw," he said.

The book is published by Arbutus Press, an independent publishing house located on the shore of Arbutus Lake, near Traverse City.