diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 68dd70b..ee541d1 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -1679,13 +1679,16 @@ function theme_image($variables) {
  */
 function theme_breadcrumb($variables) {
   $breadcrumb = $variables['breadcrumb'];
-
   if (!empty($breadcrumb)) {
+    $output = '<nav role="nav" id="breadcrumb" class="breadcrumb">';
     // Provide a navigational heading to give context for breadcrumb links to
     // screen-reader users. Make the heading invisible with .element-invisible.
-    $output = '<h2 class="element-invisible">' . t('You are here') . '</h2>';
-
-    $output .= '<div class="breadcrumb">' . implode(' » ', $breadcrumb) . '</div>';
+    $output .= '<h2 class="element-invisible">' . t('You are here') . '</h2>';
+    $output .= '<ul>';
+    foreach ($breadcrumb as $crumb) {
+      $output .= '<li>' . $crumb . ' »</li>';
+    }
+    $output .= '</ul></nav>';
     return $output;
   }
 }
diff --git a/core/modules/simpletest/tests/menu.test b/core/modules/simpletest/tests/menu.test
index d0612ac..79bbb93 100644
--- a/core/modules/simpletest/tests/menu.test
+++ b/core/modules/simpletest/tests/menu.test
@@ -107,7 +107,7 @@ class MenuWebTestCase extends DrupalWebTestCase {
    */
   protected function getParts() {
     $parts = array();
-    $elements = $this->xpath('//div[@class="breadcrumb"]/a');
+    $elements = $this->xpath('//nav[@id="breadcrumb"]/ul/li/a');
     if (!empty($elements)) {
       foreach ($elements as $element) {
         $parts[] = array(
diff --git a/core/modules/system/page.tpl.php b/core/modules/system/page.tpl.php
index 23b577e..4d109ff 100644
--- a/core/modules/system/page.tpl.php
+++ b/core/modules/system/page.tpl.php
@@ -108,7 +108,7 @@
     <?php endif; ?>
 
     <?php if ($breadcrumb): ?>
-      <div id="breadcrumb"><?php print $breadcrumb; ?></div>
+      <?php print $breadcrumb; ?>
     <?php endif; ?>
 
     <?php if ($messages): ?>
