diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 5e12ff5..6b9a72b 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -2510,40 +2510,7 @@ function template_preprocess_html(&$variables) {
   $language_interface = language(Language::TYPE_INTERFACE);
 
   // Compile a list of classes that are going to be applied to the body element.
-  // This allows advanced theming based on context (home page, node of certain type, etc.).
-  $variables['attributes']['class'][] = 'html';
-  // Add a class that tells us whether we're on the front page or not.
-  $variables['attributes']['class'][] = $variables['is_front'] ? 'front' : 'not-front';
-  // Add a class that tells us whether the page is viewed by an authenticated user or not.
-  $variables['attributes']['class'][] = $variables['logged_in'] ? 'logged-in' : 'not-logged-in';
-
-  // Add information about the number of sidebars.
-  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
-    $variables['attributes']['class'][] = 'two-sidebars';
-  }
-  elseif (!empty($variables['page']['sidebar_first'])) {
-    $variables['attributes']['class'][] = 'one-sidebar';
-    $variables['attributes']['class'][] = 'sidebar-first';
-  }
-  elseif (!empty($variables['page']['sidebar_second'])) {
-    $variables['attributes']['class'][] = 'one-sidebar';
-    $variables['attributes']['class'][] = 'sidebar-second';
-  }
-  else {
-    $variables['attributes']['class'][] = 'no-sidebars';
-  }
-
-  // Populate the body classes.
-  if ($suggestions = theme_get_suggestions(arg(), 'page', '-')) {
-    foreach ($suggestions as $suggestion) {
-      if ($suggestion != 'page-front') {
-        // Add current suggestion to page classes to make it possible to theme
-        // the page depending on the current page type (e.g. node, admin, user,
-        // etc.) as well as more specific data like node-12 or node-edit.
-        $variables['attributes']['class'][] = drupal_html_class($suggestion);
-      }
-    }
-  }
+  // This allows advanced theming based on context (node of certain type, etc.).
 
   // If on an individual node page, add the node type to body classes.
   if ($node = menu_get_object()) {
diff --git a/core/modules/system/templates/html.html.twig b/core/modules/system/templates/html.html.twig
index 6bdbe87..e82b95d 100644
--- a/core/modules/system/templates/html.html.twig
+++ b/core/modules/system/templates/html.html.twig
@@ -35,11 +35,9 @@
     {{ scripts }}
   </head>
   <body{{ attributes }}>
-    <div id="skip-link">
-      <a href="#main-content" class="visually-hidden focusable">
-        {{ 'Skip to main content'|t }}
-      </a>
-    </div>
+    <a href="#main-content" class="visually-hidden focusable">
+      {{ 'Skip to main content'|t }}
+    </a>
     {{ page_top }}
     {{ page }}
     {{ page_bottom }}
diff --git a/core/themes/bartik/bartik.theme b/core/themes/bartik/bartik.theme
index ed59e8d..e031090 100644
--- a/core/themes/bartik/bartik.theme
+++ b/core/themes/bartik/bartik.theme
@@ -11,6 +11,38 @@
  * Adds body classes if certain regions have content.
  */
 function bartik_preprocess_html(&$variables) {
+  // Add a class that tells us whether we're on the front page or not.
+  $variables['attributes']['class'][] = $variables['is_front'] ? 'front' : 'not-front';
+  // Add a class that tells us whether the page is viewed by an authenticated user or not.
+  $variables['attributes']['class'][] = $variables['logged_in'] ? 'logged-in' : 'not-logged-in';
+
+  // Add information about the number of sidebars.
+  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'two-sidebars';
+  }
+  elseif (!empty($variables['page']['sidebar_first'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-first';
+  }
+  elseif (!empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-second';
+  }
+  else {
+    $variables['attributes']['class'][] = 'no-sidebars';
+  }
+
+ if ($suggestions = theme_get_suggestions(arg(), 'page', '-')) {
+    foreach ($suggestions as $suggestion) {
+      if ($suggestion != 'page-front' && $suggestion != 'page-' ) {
+        // Add current suggestion to page classes to make it possible to theme
+        // the page depending on the current page type (e.g. node, admin, user,
+        // etc.) as well as more specific data like page-node-12 or page-node-edit.
+        $variables['attributes']['class'][] = drupal_html_class($suggestion);
+      }
+    }
+ }
+
   if (!empty($variables['page']['featured'])) {
     $variables['attributes']['class'][] = 'featured';
   }
diff --git a/core/modules/system/templates/html.html.twig b/core/themes/bartik/templates/html.html.twig
similarity index 100%
copy from core/modules/system/templates/html.html.twig
copy to core/themes/bartik/templates/html.html.twig
diff --git a/core/themes/seven/seven.theme b/core/themes/seven/seven.theme
index cb0cd84..0f21a20 100644
--- a/core/themes/seven/seven.theme
+++ b/core/themes/seven/seven.theme
@@ -47,6 +47,34 @@ function seven_preprocess_maintenance_page(&$variables) {
  */
 function seven_preprocess_html(&$variables) {
   drupal_add_library('system', 'normalize');
+
+  // Add information about the number of sidebars.
+  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'two-sidebars';
+  }
+  elseif (!empty($variables['page']['sidebar_first'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-first';
+  }
+  elseif (!empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-second';
+  }
+  else {
+    $variables['attributes']['class'][] = 'no-sidebars';
+  }
+
+  if ($suggestions = theme_get_suggestions(arg(), 'page', '-')) {
+    foreach ($suggestions as $suggestion) {
+      if ($suggestion != 'page-front' && $suggestion != 'page-' ) {
+        // Add current suggestion to page classes to make it possible to theme
+        // the page depending on the current page type (e.g. node, admin, user,
+        // etc.) as well as more specific data like page-node-12 or page-node-edit.
+        $variables['attributes']['class'][] = drupal_html_class($suggestion);
+      }
+    }
+  }
+
 }
 
 /**
diff --git a/core/modules/system/templates/html.html.twig b/core/themes/seven/templates/html.html.twig
similarity index 100%
copy from core/modules/system/templates/html.html.twig
copy to core/themes/seven/templates/html.html.twig
diff --git a/core/themes/stark/stark.theme b/core/themes/stark/stark.theme
new file mode 100644
index 0000000..b8cdbac
--- /dev/null
+++ b/core/themes/stark/stark.theme
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * @file
+ * Functions to support theming in the Stark theme.
+ */
+
+/**
+ * Implements hook_preprocess_HOOK() for html.tpl.php.
+ *
+ * Adds body classes if certain regions have content.
+ */
+function stark_preprocess_html(&$variables) {
+  // Add information about the number of sidebars.
+  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'two-sidebars';
+  }
+  elseif (!empty($variables['page']['sidebar_first'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-first';
+  }
+  elseif (!empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-second';
+  }
+  else {
+    $variables['attributes']['class'][] = 'no-sidebars';
+  }
+}
