diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 3ce399bd0d4a407b5770b25e06b96b939633ff7d..6b8ee4a26ec6ec2a1640026470da9ff75011fe41 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -1830,7 +1830,7 @@ function theme_breadcrumb($variables) {
     // 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 .= '<ol><li>' . implode(' » </li><li>', $breadcrumb) . '</li></ol>';
+    $output .= '<ol><li>' . implode('</li><li>', $breadcrumb) . '</li></ol>';
     $output .= '</nav>';
   }
   return $output;
diff --git a/core/modules/system/system.theme.css b/core/modules/system/system.theme.css
index 6a4a64dabc1db4bff5dd6a2fce72a657fb466fe5..4d49d84c596b2db99e04c5bdeec5d3466db768d4 100644
--- a/core/modules/system/system.theme.css
+++ b/core/modules/system/system.theme.css
@@ -305,6 +305,13 @@ ul.inline li {
   margin: 0;
   padding: 0;
 }
+/* IE8 does not support :not() and :last-child. */
+.breadcrumb li:before {
+  content: ' » ';
+}
+.breadcrumb li:first-child:before {
+  content: none;
+}
 
 /**
  * Markup generated by theme_menu_local_tasks().