, 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); })(); Four Year Plan - Public Health | Âé¶¹Çø

Âé¶¹Çø

Skip to main content

Four Year Plan

This suggested class schedule can be used to help public health majors organize which courses they will take and when in order to graduate within four years.

First year

Semester Hours

PUBH 101 3
SOC 250 3
ALSO: Core and general elective courses 27

Second Year

Biostatics 4
PUBH 248 (Biostatics is prerequisite) 4
PUBH 295 0
PHIL 212 3
ECON 241 3
ALSO: Core and general elective courses 19

Third Year

Health Behavior/Education area 3
Health Policy area 3
Global/Environmental Health area 3
PUBH 295 0
Two advisor approved PUBH electives 6–8
ALSO: Core and general elective courses 16–18

Fourth Year

Two advisor approved PUBH electives 6–8
PUBH 295 0
PUBH 395 3
PUBH (elective internship) 3
ALSO: Core and general elective courses 19–21
Graduation requirement: 124
Public Health Major: 44–47