, 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); })(); Abraham Kuyper - News & Stories | 黄大仙高手论坛

黄大仙高手论坛

Skip to main content

Publications

Abraham Kuyper

Wed, May 01, 2013
James D. Bratt

This is the first full-scale English-language biography of the highly influential and astonishingly multifaceted Abraham Kuyper (1837-1920) -- theologian, minister, politician, newspaper editor, educational innovator, Calvinist reformer, and prime minister of the Netherlands from 1901 to 1905.

James Bratt is the ideal scholar to tell the story of Kuyper's remarkable life and work. He expertly traces the origin and development of Kuyper's signature concepts -- common grace, Christian worldview, sphere sovereignty, Christian engagement with contemporary culture -- in the dynamic context of his life's story.

Based on voluminous primary and secondary Dutch sources, Bratt's Abraham Kuyper: Modern Calvinist, Christian Democratwill prove to be the go-to biography of this major figure whose ideas and influence extend far beyond his own time and place.