, 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); })(); Majors and Programs | Â鶹Çø

Â鶹Çø

Skip to main content

Majors & Programs

100+ Bachelor's and Master's programs that span the humanities, sciences, and everything in between.

Filter by:

Digital Communication Major

Delivery Mode
On Campus
Degree Options
Major

Early Childhood Education Grade Bands

Delivery Mode
On Campus
Degree Options
Major

Economics Major (BA, BS), Minor

Delivery Mode
On Campus
Degree Options
Major
Minor

Education (3rd to 6th Grade) Major

Delivery Mode
On Campus
Degree Options
Major

Education (Birth to Kindergarten) Major

Delivery Mode
On Campus
Degree Options
Major

Education (Pre-K to 12th Grade) Major

Delivery Mode
On Campus
Degree Options
Major
Minor

Electrical & Computer Engineering (BSE)

Delivery Mode
On Campus
Degree Options
Concentration

Elementary Education Grade Bands

Delivery Mode
On Campus
Degree Options
Major

Energy, Environment, and Sustainability Concentration (BSE)

Delivery Mode
On Campus
Degree Options
Concentration

English Language Arts Education (5th to 9th Grade) Minor

Delivery Mode
On Campus
Degree Options
Minor

English Language Arts Education (7th to 12th Grade) Major

Delivery Mode
On Campus
Degree Options
Major

English: General Concentration

Delivery Mode
On Campus
Degree Options
Major
Minor

English: Linguistics Concentration

Delivery Mode
On Campus
Degree Options
Major
Minor

English: Literature Concentration

Delivery Mode
On Campus
Degree Options
Major
Minor

English: Writing Concentration

Delivery Mode
On Campus
Degree Options
Major
Minor