diff --git a/core/modules/outside_in/css/off-canvas.css b/core/modules/outside_in/css/off-canvas.css
index fb671db..f9ccda0 100644
--- a/core/modules/outside_in/css/off-canvas.css
+++ b/core/modules/outside_in/css/off-canvas.css
@@ -1,23 +1,23 @@
 /**
  * @file
- * CSS for Offcanvas tray.
+ * CSS for OffCanvas tray.
  *
  * @todo Move CSS into core dialog library https://www.drupal.org/node/2784443.
  */
-/* Position the dialog-offcanvas tray container outside the right of the viewport. */
-.ui-dialog-offcanvas {
+/* Position the dialog-off-canvas tray container outside the right of the viewport. */
+.ui-dialog-off-canvas {
     box-sizing: border-box;
     height: 100%;
     overflow: visible;
 }
 
-/* Wrap the form that's inside the dialog-offcanvas tray. */
-.ui-dialog-offcanvas .ui-dialog-content {
+/* Wrap the form that's inside the dialog-off-canvas tray. */
+.ui-dialog-off-canvas .ui-dialog-content {
     padding: 0 20px;
     /* Prevent horizontal scrollbar. */
     overflow-x: hidden;
     overflow-y: auto;
 }
-[dir="rtl"] .ui-dialog-offcanvas .ui-dialog-content {
+[dir="rtl"] .ui-dialog-off-canvas .ui-dialog-content {
     text-align: right;
 }
diff --git a/core/modules/outside_in/css/off-canvas.motion.css b/core/modules/outside_in/css/off-canvas.motion.css
index 1c06994..516fec2 100644
--- a/core/modules/outside_in/css/off-canvas.motion.css
+++ b/core/modules/outside_in/css/off-canvas.motion.css
@@ -10,22 +10,22 @@
  *   file: https://www.drupal.org/node/2784443.
  */
 
-/* Transition the dialog-offcanvas tray container, with 2s delay to match main canvas speed. */
-.ui-dialog-offcanvas .ui-dialog-content {
+/* Transition the dialog-off-canvas tray container, with 2s delay to match main canvas speed. */
+.ui-dialog-off-canvas .ui-dialog-content {
     -webkit-transition: all .7s ease 2s;
     -moz-transition: all .7s ease 2s;
     transition: all .7s ease 2s;
 }
 
 @media (max-width: 700px) {
-    .ui-dialog-offcanvas .ui-dialog-content {
+    .ui-dialog-off-canvas .ui-dialog-content {
         -webkit-transition: all .7s ease;
         -moz-transition: all .7s ease;
         transition: all .7s ease;
     }
 }
 
-.dialog-offcanvas__main-canvas {
+.dialog-off-canvas__main-canvas {
   -webkit-transition: all .7s ease;
   -moz-transition: all .7s ease;
   transition: all .7s ease;
diff --git a/core/modules/outside_in/css/outside_in.module.css b/core/modules/outside_in/css/outside_in.module.css
index 5ac00ab..9d90bf2 100644
--- a/core/modules/outside_in/css/outside_in.module.css
+++ b/core/modules/outside_in/css/outside_in.module.css
@@ -27,7 +27,7 @@
  * to expand dialog widths.
  */
 @media all and (max-width: 48em) { /* 768px */
-  .ui-dialog.ui-dialog-offcanvas {
+  .ui-dialog.ui-dialog-off-canvas {
     width: 100% !important;
   }
   /* When tray is at 100% width stop the body from scrolling */
diff --git a/core/modules/outside_in/css/outside_in.motion.css b/core/modules/outside_in/css/outside_in.motion.css
index 450bffe..3c86aca 100644
--- a/core/modules/outside_in/css/outside_in.motion.css
+++ b/core/modules/outside_in/css/outside_in.motion.css
@@ -19,9 +19,9 @@
 }
 
 /* Transition the editables on the page, their contextual links and their hover states. */
-.dialog-offcanvas__main-canvas .contextual,
-.dialog-offcanvas__main-canvas .js-outside-in-edit-mode .outside-in-editable,
-.dialog-offcanvas__main-canvas.js-tray-open .js-outside-in-edit-mode .outside-in-editable {
+.dialog-off-canvas__main-canvas .contextual,
+.dialog-off-canvas__main-canvas .js-outside-in-edit-mode .outside-in-editable,
+.dialog-off-canvas__main-canvas.js-tray-open .js-outside-in-edit-mode .outside-in-editable {
   -webkit-transition: all .7s ease;
   -moz-transition: all .7s ease;
   transition: all .7s ease;
diff --git a/core/modules/outside_in/css/outside_in.theme.css b/core/modules/outside_in/css/outside_in.theme.css
index 91c01ab..011d198 100644
--- a/core/modules/outside_in/css/outside_in.theme.css
+++ b/core/modules/outside_in/css/outside_in.theme.css
@@ -60,16 +60,16 @@
 }
 
 /* Style the editables while in edit mode. */
-.dialog-offcanvas__main-canvas.js-outside-in-edit-mode .outside-in-editable {
+.dialog-off-canvas__main-canvas.js-outside-in-edit-mode .outside-in-editable {
   outline: 1px dashed rgba(0,0,0,0.5);
   box-shadow: 0 0 0 1px rgba(255,255,255,0.7);
 }
-.dialog-offcanvas__main-canvas.js-outside-in-edit-mode .outside-in-editable:hover,
-.dialog-offcanvas__main-canvas.js-outside-in-edit-mode .outside-in-editable.outside-in-active-editable {
+.dialog-off-canvas__main-canvas.js-outside-in-edit-mode .outside-in-editable:hover,
+.dialog-off-canvas__main-canvas.js-outside-in-edit-mode .outside-in-editable.outside-in-active-editable {
   background-color: rgba(0,0,0,0.2);
 }
 
-/* Style the dialog-offcanvas container. */
+/* Style the dialog-off-canvas container. */
 .ui-dialog-outside-in {
   background: #444;
   border: 0 solid transparent;
diff --git a/core/modules/outside_in/js/outside_in.js b/core/modules/outside_in/js/outside_in.js
index 0b8bc88..99a95f4 100644
--- a/core/modules/outside_in/js/outside_in.js
+++ b/core/modules/outside_in/js/outside_in.js
@@ -9,7 +9,7 @@
 
   var blockConfigureSelector = '[data-outside-in-edit]';
   var toggleEditSelector = '[data-drupal-outsidein="toggle"]';
-  var itemsToToggleSelector = '[data-offcanvas-main-canvas], #toolbar-bar, [data-drupal-outsidein="editable"] a, [data-drupal-outsidein="editable"] button';
+  var itemsToToggleSelector = '[data-off-canvas-main-canvas], #toolbar-bar, [data-drupal-outsidein="editable"] a, [data-drupal-outsidein="editable"] button';
   var contextualItemsSelector = '[data-contextual-id] a, [data-contextual-id] button';
   var quickEditItemSelector = '[data-quickedit-entity-id]';
 
@@ -111,10 +111,10 @@
   }
 
   /**
-   * Closes/removes offcanvas.
+   * Closes/removes off-canvas.
    */
   function closeOffCanvas() {
-    $('.ui-dialog-offcanvas .ui-dialog-titlebar-close').trigger('click');
+    $('.ui-dialog-off-canvas .ui-dialog-titlebar-close').trigger('click');
   }
 
   /**
@@ -135,7 +135,7 @@
       $editables = $('[data-drupal-outsidein="editable"]').once('outsidein');
       if ($editables.length) {
         // Use event capture to prevent clicks on links.
-        document.querySelector('[data-offcanvas-main-canvas]').addEventListener('click', preventClick, true);
+        document.querySelector('[data-off-canvas-main-canvas]').addEventListener('click', preventClick, true);
 
         // When a click occurs try and find the outside-in edit link
         // and click it.
@@ -154,7 +154,7 @@
           .on('click.outsidein', function (e) {
             // For all non-contextual links or the contextual QuickEdit link close the off-canvas tray.
             if (!$(e.target).parent().hasClass('contextual') || $(e.target).parent().hasClass('quickedit')) {
-              closeOffCanvas();
+                closeOffCanvas();
             }
             // Do not trigger if target is quick edit link to avoid loop.
             if ($(e.target).parent().hasClass('contextual') || $(e.target).parent().hasClass('quickedit')) {
@@ -168,13 +168,13 @@
     else {
       $editables = $('[data-drupal-outsidein="editable"]').removeOnce('outsidein');
       if ($editables.length) {
-        document.querySelector('[data-offcanvas-main-canvas]').removeEventListener('click', preventClick, true);
+        document.querySelector('[data-off-canvas-main-canvas]').removeEventListener('click', preventClick, true);
         $editables.off('.outsidein');
         $(quickEditItemSelector).off('.outsidein');
       }
 
       $editButton.text(Drupal.t('Edit'));
-      closeOffCanvas();
+        closeOffCanvas();
       disableQuickEdit();
     }
     getItemsToToggle().toggleClass('js-outside-in-edit-mode', editMode);
@@ -212,19 +212,19 @@
       $(toggleEditSelector).once('outsidein').on('click.outsidein', toggleEditMode);
 
       var search = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog';
-      var replace = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog_offcanvas';
-      // Loop through all Ajax links and change the format to dialog-offcanvas when
+      var replace = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog_off-canvas';
+      // Loop through all Ajax links and change the format to dialog-off-canvas when
       // needed.
       Drupal.ajax.instances
         .filter(function (instance) {
           var hasElement = instance && !!instance.element;
-          var rendererOffcanvas = false;
-          var wrapperOffcanvas = false;
+          var rendererOffCanvas = false;
+          var wrapperOffCanvas = false;
           if (hasElement) {
-            rendererOffcanvas = $(instance.element).attr('data-dialog-renderer') === 'offcanvas';
-            wrapperOffcanvas = instance.options.url.indexOf('drupal_dialog_offcanvas') === -1;
+            rendererOffCanvas = $(instance.element).attr('data-dialog-renderer') === 'off-canvas';
+            wrapperOffCanvas = instance.options.url.indexOf('drupal_dialog_off-canvas') === -1;
           }
-          return hasElement && rendererOffcanvas && wrapperOffcanvas;
+          return hasElement && rendererOffCanvas && wrapperOffCanvas;
         })
         .forEach(function (instance) {
           // @todo Move logic for data-dialog-renderer attribute into ajax.js
@@ -243,7 +243,7 @@
   // Manage Active editable class on opening and closing of the dialog.
   $(window).on({
     'dialog:beforecreate': function (event, dialog, $element, settings) {
-      if ($element.is('#drupal-offcanvas')) {
+      if ($element.is('#drupal-off-canvas')) {
         $('body .outside-in-active-editable').removeClass('outside-in-active-editable');
         var $activeElement = $('#' + settings.outsideInActiveEditableId);
         if ($activeElement.length) {
@@ -253,7 +253,7 @@
       }
     },
     'dialog:beforeclose': function (event, dialog, $element) {
-      if ($element.is('#drupal-offcanvas')) {
+      if ($element.is('#drupal-off-canvas')) {
         $('body .outside-in-active-editable').removeClass('outside-in-active-editable');
       }
     }
diff --git a/core/modules/outside_in/outside_in.libraries.yml b/core/modules/outside_in/outside_in.libraries.yml
index 5eddea4..5c388b8 100644
--- a/core/modules/outside_in/outside_in.libraries.yml
+++ b/core/modules/outside_in/outside_in.libraries.yml
@@ -23,7 +23,7 @@ drupal.outside_in:
 drupal.off_canvas:
   version: VERSION
   js:
-    js/offcanvas.js: {}
+    js/off-canvas.js: {}
   dependencies:
     - core/jquery
     - core/drupal
diff --git a/core/modules/outside_in/outside_in.links.contextual.yml b/core/modules/outside_in/outside_in.links.contextual.yml
index 99b36ef..b0c0f13 100644
--- a/core/modules/outside_in/outside_in.links.contextual.yml
+++ b/core/modules/outside_in/outside_in.links.contextual.yml
@@ -1,4 +1,4 @@
 outside_in.block_configure:
   title: 'Quick edit'
-  route_name: 'entity.block.offcanvas_form'
+  route_name: 'entity.block.off_canvas_form'
   group: 'block'
diff --git a/core/modules/outside_in/outside_in.module b/core/modules/outside_in/outside_in.module
index a7fab7b..4d481c7 100644
--- a/core/modules/outside_in/outside_in.module
+++ b/core/modules/outside_in/outside_in.module
@@ -30,14 +30,14 @@ function outside_in_help($route_name, RouteMatchInterface $route_match) {
 /**
  * Implements hook_contextual_links_view_alter().
  *
- * Change Configure Blocks into offcanvas links.
+ * Change Configure Blocks into off_canvas links.
  */
 function outside_in_contextual_links_view_alter(&$element, $items) {
   if (isset($element['#links']['outside-inblock-configure'])) {
     $element['#links']['outside-inblock-configure']['attributes'] = [
       'class' => ['use-ajax'],
       'data-dialog-type' => 'dialog',
-      'data-dialog-renderer' => 'offcanvas',
+      'data-dialog-renderer' => 'off_canvas',
       'data-outside-in-edit' => TRUE,
     ];
 
@@ -83,8 +83,8 @@ function outside_in_theme() {
 function outside_in_entity_type_build(array &$entity_types) {
   /* @var $entity_types \Drupal\Core\Entity\EntityTypeInterface[] */
   $entity_types['block']
-    ->setFormClass('offcanvas', BlockEntityOffCanvasForm::class)
-    ->setLinkTemplate('offcanvas-form', '/admin/structure/block/manage/{block}/offcanvas');
+    ->setFormClass('off_canvas', BlockEntityOffCanvasForm::class)
+    ->setLinkTemplate('off_canvas-form', '/admin/structure/block/manage/{block}/off_canvas');
 }
 
 /**
@@ -130,14 +130,14 @@ function outside_in_toolbar_alter(&$items) {
  */
 function outside_in_block_alter(&$definitions) {
   if (!empty($definitions['system_branding_block'])) {
-    $definitions['system_branding_block']['forms']['offcanvas'] = SystemBrandingOffCanvasForm::class;
+    $definitions['system_branding_block']['forms']['off_canvas'] = SystemBrandingOffCanvasForm::class;
   }
 
   // Since menu blocks use derivatives, check the definition ID instead of
   // relying on the plugin ID.
   foreach ($definitions as &$definition) {
     if ($definition['id'] === 'system_menu_block') {
-      $definition['forms']['offcanvas'] = SystemMenuOffCanvasForm::class;
+      $definition['forms']['off_canvas'] = SystemMenuOffCanvasForm::class;
     }
   }
 }
diff --git a/core/modules/outside_in/outside_in.services.yml b/core/modules/outside_in/outside_in.services.yml
index 48f5824..37ba1b3 100644
--- a/core/modules/outside_in/outside_in.services.yml
+++ b/core/modules/outside_in/outside_in.services.yml
@@ -3,7 +3,7 @@ services:
     class: Drupal\outside_in\Render\MainContent\OffCanvasRender
     arguments: ['@title_resolver', '@renderer']
     tags:
-      - { name: render.main_content_renderer, format: drupal_dialog_offcanvas }
+      - { name: render.main_content_renderer, format: drupal_dialog_off_canvas }
 
   outside_in.manager:
     class: Drupal\outside_in\OutsideInManager
diff --git a/core/modules/outside_in/src/Ajax/OpenOffCanvasDialogCommand.php b/core/modules/outside_in/src/Ajax/OpenOffCanvasDialogCommand.php
index d78dc35..dc6e550 100644
--- a/core/modules/outside_in/src/Ajax/OpenOffCanvasDialogCommand.php
+++ b/core/modules/outside_in/src/Ajax/OpenOffCanvasDialogCommand.php
@@ -33,7 +33,7 @@ class OpenOffCanvasDialogCommand extends OpenDialogCommand {
    *   populated automatically from the current request.
    */
   public function __construct($title, $content, array $dialog_options = [], $settings = NULL) {
-    parent::__construct('#drupal-offcanvas', $title, $content, $dialog_options, $settings);
+    parent::__construct('#drupal-off_canvas', $title, $content, $dialog_options, $settings);
     $this->dialogOptions['modal'] = FALSE;
     $this->dialogOptions['autoResize'] = FALSE;
     $this->dialogOptions['resizable'] = 'w';
diff --git a/core/modules/outside_in/src/Block/BlockEntityOffCanvasForm.php b/core/modules/outside_in/src/Block/BlockEntityOffCanvasForm.php
index a77f51f..1d6ea37 100644
--- a/core/modules/outside_in/src/Block/BlockEntityOffCanvasForm.php
+++ b/core/modules/outside_in/src/Block/BlockEntityOffCanvasForm.php
@@ -92,7 +92,7 @@ protected function submitVisibility(array $form, FormStateInterface $form_state)
    */
   protected function getPluginForm(BlockPluginInterface $block) {
     if ($block instanceof PluginWithFormsInterface) {
-      return $this->pluginFormFactory->createInstance($block, 'offcanvas', 'configure');
+      return $this->pluginFormFactory->createInstance($block, 'off_canvas', 'configure');
     }
     return $block;
   }
diff --git a/core/modules/outside_in/src/Render/MainContent/OffCanvasRender.php b/core/modules/outside_in/src/Render/MainContent/OffCanvasRender.php
index 5d24c09..e1f11d6 100644
--- a/core/modules/outside_in/src/Render/MainContent/OffCanvasRender.php
+++ b/core/modules/outside_in/src/Render/MainContent/OffCanvasRender.php
@@ -11,7 +11,7 @@
 use Symfony\Component\HttpFoundation\Request;
 
 /**
- * Default main content renderer for offcanvas dialog requests.
+ * Default main content renderer for off_canvas dialog requests.
  */
 class OffCanvasRender extends DialogRenderer {
 
@@ -43,7 +43,6 @@ public function renderResponse(array $main_content, Request $request, RouteMatch
 
     // First render the main content, because it might provide a title.
     $content = $this->renderer->renderRoot($main_content);
-
     // Attach the library necessary for using the OpenOffCanvasDialogCommand and
     // set the attachments for this Ajax response.
     $main_content['#attached']['library'][] = 'outside_in/drupal.off_canvas';
@@ -55,7 +54,6 @@ public function renderResponse(array $main_content, Request $request, RouteMatch
     // Determine the title: use the title provided by the main content if any,
     // otherwise get it from the routing information.
     $options = $request->request->get('dialogOptions', []);
-
     $response->addCommand(new OpenOffCanvasDialogCommand($title, $content, $options));
     return $response;
   }
diff --git a/core/modules/outside_in/src/Tests/Ajax/OffCanvasDialogTest.php b/core/modules/outside_in/src/Tests/Ajax/OffCanvasDialogTest.php
index f351042..9d4f913 100644
--- a/core/modules/outside_in/src/Tests/Ajax/OffCanvasDialogTest.php
+++ b/core/modules/outside_in/src/Tests/Ajax/OffCanvasDialogTest.php
@@ -21,7 +21,7 @@ class OffCanvasDialogTest extends AjaxTestBase {
   public static $modules = ['outside_in'];
 
   /**
-   * Test sending AJAX requests to open and manipulate offcanvas dialog.
+   * Test sending AJAX requests to open and manipulate off_canvas dialog.
    */
   public function testDialog() {
     $this->drupalLogin($this->drupalCreateUser(['administer contact forms']));
@@ -32,9 +32,9 @@ public function testDialog() {
     $dialog_renderable = AjaxTestController::dialogContents();
     $dialog_contents = \Drupal::service('renderer')->renderRoot($dialog_renderable);
 
-    $offcanvas_expected_response = [
+    $off_canvas_expected_response = [
       'command' => 'openDialog',
-      'selector' => '#drupal-offcanvas',
+      'selector' => '#drupal-off_canvas',
       'settings' => NULL,
       'data' => $dialog_contents,
       'dialogOptions' =>
@@ -52,8 +52,8 @@ public function testDialog() {
     ];
 
     // Emulate going to the JS version of the page and check the JSON response.
-    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-contents', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog_offcanvas']]);
-    $this->assertEqual($offcanvas_expected_response, $ajax_result[3], 'Off-canvas dialog JSON response matches.');
+    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-contents', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog_off_canvas']]);
+    $this->assertEqual($off_canvas_expected_response, $ajax_result[3], 'Off-canvas dialog JSON response matches.');
   }
 
 }
diff --git a/core/modules/outside_in/templates/outside-in-page-wrapper.html.twig b/core/modules/outside_in/templates/outside-in-page-wrapper.html.twig
index adedc6b..52b8096 100644
--- a/core/modules/outside_in/templates/outside-in-page-wrapper.html.twig
+++ b/core/modules/outside_in/templates/outside-in-page-wrapper.html.twig
@@ -12,7 +12,7 @@
  */
 #}
 {% if children %}
-  <div class="dialog-offcanvas__main-canvas" data-offcanvas-main-canvas >
+  <div class="dialog-off_canvas__main-canvas" data-off_canvas-main-canvas >
     {{ children }}
   </div>
 {% endif %}
diff --git a/core/modules/outside_in/tests/modules/offcanvas_test/offcanvas_test.routing.yml b/core/modules/outside_in/tests/modules/offcanvas_test/offcanvas_test.routing.yml
index 761693b..f4b815d 100644
--- a/core/modules/outside_in/tests/modules/offcanvas_test/offcanvas_test.routing.yml
+++ b/core/modules/outside_in/tests/modules/offcanvas_test/offcanvas_test.routing.yml
@@ -1,29 +1,29 @@
-offcanvas_test.links:
-  path: '/offcanvas-test-links'
+off_canvas_test.links:
+  path: '/off_canvas-test-links'
   defaults:
-    _controller: '\Drupal\offcanvas_test\Controller\TestController::linksDisplay'
+    _controller: '\Drupal\off_canvas_test\Controller\TestController::linksDisplay'
     _title: 'Links'
   requirements:
     _access: 'TRUE'
 
-offcanvas_test.thing1:
-  path: '/offcanvas-thing1'
+off_canvas_test.thing1:
+  path: '/off_canvas-thing1'
   defaults:
-    _controller: '\Drupal\offcanvas_test\Controller\TestController::thing1'
+    _controller: '\Drupal\off_canvas_test\Controller\TestController::thing1'
     _title: 'Thing 1'
   requirements:
     _access: 'TRUE'
 
-offcanvas_test.thing2:
-  path: '/offcanvas-thing2'
+off_canvas_test.thing2:
+  path: '/off_canvas-thing2'
   defaults:
-    _controller: '\Drupal\offcanvas_test\Controller\TestController::thing2'
+    _controller: '\Drupal\off_canvas_test\Controller\TestController::thing2'
   requirements:
     _access: 'TRUE'
 
-offcanvas_test.dialog_links:
-  path: '/offcanvas-dialog-links'
+off_canvas_test.dialog_links:
+  path: '/off_canvas-dialog-links'
   defaults:
-    _controller: '\Drupal\offcanvas_test\Controller\TestController::otherDialogLinks'
+    _controller: '\Drupal\off_canvas_test\Controller\TestController::otherDialogLinks'
   requirements:
     _access: 'TRUE'
diff --git a/core/modules/outside_in/tests/modules/offcanvas_test/src/Controller/TestController.php b/core/modules/outside_in/tests/modules/offcanvas_test/src/Controller/TestController.php
index 9ee8e17..0b0ceb9 100644
--- a/core/modules/outside_in/tests/modules/offcanvas_test/src/Controller/TestController.php
+++ b/core/modules/outside_in/tests/modules/offcanvas_test/src/Controller/TestController.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\offcanvas_test\Controller;
+namespace Drupal\off_canvas_test\Controller;
 
 use Drupal\Component\Serialization\Json;
 use Drupal\Core\Url;
@@ -37,21 +37,21 @@ public function thing2() {
   }
 
   /**
-   * Displays test links that will open in offcanvas tray.
+   * Displays test links that will open in off_canvas tray.
    *
    * @return array
    *   Render array with links.
    */
   public function linksDisplay() {
     return [
-      'offcanvas_link_1' => [
+      'off_canvas_link_1' => [
         '#title' => 'Click Me 1!',
         '#type' => 'link',
-        '#url' => Url::fromRoute('offcanvas_test.thing1'),
+        '#url' => Url::fromRoute('off_canvas_test.thing1'),
         '#attributes' => [
           'class' => ['use-ajax'],
           'data-dialog-type' => 'dialog',
-          'data-dialog-renderer' => 'offcanvas',
+          'data-dialog-renderer' => 'off_canvas',
         ],
         '#attached' => [
           'library' => [
@@ -59,14 +59,14 @@ public function linksDisplay() {
           ],
         ],
       ],
-      'offcanvas_link_2' => [
+      'off_canvas_link_2' => [
         '#title' => 'Click Me 2!',
         '#type' => 'link',
-        '#url' => Url::fromRoute('offcanvas_test.thing2'),
+        '#url' => Url::fromRoute('off_canvas_test.thing2'),
         '#attributes' => [
           'class' => ['use-ajax'],
           'data-dialog-type' => 'dialog',
-          'data-dialog-renderer' => 'offcanvas',
+          'data-dialog-renderer' => 'off_canvas',
           'data-dialog-options' => Json::encode([
             'width' => 555,
           ]),
@@ -80,11 +80,11 @@ public function linksDisplay() {
       'other_dialog_links' => [
         '#title' => 'Display more links!',
         '#type' => 'link',
-        '#url' => Url::fromRoute('offcanvas_test.dialog_links'),
+        '#url' => Url::fromRoute('off_canvas_test.dialog_links'),
         '#attributes' => [
           'class' => ['use-ajax'],
           'data-dialog-type' => 'dialog',
-          'data-dialog-renderer' => 'offcanvas',
+          'data-dialog-renderer' => 'off_canvas',
         ],
         '#attached' => [
           'library' => [
@@ -96,12 +96,12 @@ public function linksDisplay() {
   }
 
   /**
-   * Displays dialogs links to be displayed inside the offcanvas tray.
+   * Displays dialogs links to be displayed inside the off_canvas tray.
    *
-   * This links are used to test opening a modal and another offcanvas link from
-   * inside the offcanvas tray.
+   * This links are used to test opening a modal and another off_canvas link from
+   * inside the off_canvas tray.
    *
-   * @todo Update tests to check these links work in the offcanvas tray.
+   * @todo Update tests to check these links work in the off_canvas tray.
    *       https://www.drupal.org/node/2790073
    *
    * @return array
@@ -113,19 +113,19 @@ public function otherDialogLinks() {
       '#links' => [
         'modal_link' => [
           'title' => 'Open modal!',
-          'url' => Url::fromRoute('offcanvas_test.thing2'),
+          'url' => Url::fromRoute('off_canvas_test.thing2'),
           'attributes' => [
             'class' => ['use-ajax'],
             'data-dialog-type' => 'modal',
           ],
         ],
-        'offcanvas_link' => [
-          'title' => 'Offcanvas link!',
-          'url' => Url::fromRoute('offcanvas_test.thing2'),
+        'off_canvas_link' => [
+          'title' => 'Off_canvas link!',
+          'url' => Url::fromRoute('off_canvas_test.thing2'),
           'attributes' => [
             'class' => ['use-ajax'],
             'data-dialog-type' => 'dialog',
-            'data-dialog-renderer' => 'offcanvas',
+            'data-dialog-renderer' => 'off_canvas',
           ],
         ],
       ],
diff --git a/core/modules/outside_in/tests/src/FunctionalJavascript/OffCanvasTest.php b/core/modules/outside_in/tests/src/FunctionalJavascript/OffCanvasTest.php
index b81c723..374aef3 100644
--- a/core/modules/outside_in/tests/src/FunctionalJavascript/OffCanvasTest.php
+++ b/core/modules/outside_in/tests/src/FunctionalJavascript/OffCanvasTest.php
@@ -12,23 +12,23 @@ class OffCanvasTest extends OutsideInJavascriptTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = ['block', 'system', 'toolbar', 'outside_in', 'offcanvas_test'];
+  public static $modules = ['block', 'system', 'toolbar', 'outside_in', 'off_canvas_test'];
 
   /**
    * Tests that regular non-contextual links will work with the off-canvas tray.
    */
-  public function testOffCanvasLinks() {
+    public function testOffCanvasLinks() {
     $themes = ['bartik', 'stark'];
     // Test the same functionality on multiple themes.
     foreach ($themes as $theme) {
       $this->enableTheme($theme);
-      $this->drupalGet('/offcanvas-test-links');
+      $this->drupalGet('/off_canvas-test-links');
 
       $page = $this->getSession()->getPage();
       $web_assert = $this->assertSession();
 
       // Make sure off-canvas tray is on page when first loaded.
-      $web_assert->elementNotExists('css', '#drupal-offcanvas');
+      $web_assert->elementNotExists('css', '#drupal-off_canvas');
 
       // Check opening and closing with two separate links.
       // Make sure tray updates to new content.
@@ -40,16 +40,16 @@ public function testOffCanvasLinks() {
         $this->waitForOffCanvasToOpen();
 
         // Check that the canvas is not on the page.
-        $web_assert->elementExists('css', '#drupal-offcanvas');
+        $web_assert->elementExists('css', '#drupal-off-canvas');
         // Check that response text is on page.
         $web_assert->pageTextContains("Thing $link_index says hello");
-        $offcanvas_tray = $this->getTray();
+        $off_canvas_tray = $this->getTray();
 
         // Check that tray is visible.
-        $this->assertEquals(TRUE, $offcanvas_tray->isVisible());
-        $header_text = $offcanvas_tray->find('css', '.ui-dialog-title')->getText();
+        $this->assertEquals(TRUE, $off_canvas_tray->isVisible());
+        $header_text = $off_canvas_tray->find('css', '.ui-dialog-title')->getText();
 
-        $tray_text = $offcanvas_tray->findById('drupal-offcanvas')->getText();
+        $tray_text = $off_canvas_tray->findById('drupal-off-canvas')->getText();
         $this->assertEquals("Thing $link_index says hello", $tray_text);
 
         if ($link_index == '2') {
@@ -57,7 +57,7 @@ public function testOffCanvasLinks() {
           $web_assert->elementExists('css', '.ui-dialog-empty-title');
           $this->assertEquals('', $header_text);
 
-          $style = $page->find('css', '.ui-dialog-offcanvas')->getAttribute('style');
+          $style = $page->find('css', '.ui-dialog-off-canvas')->getAttribute('style');
           self::assertTrue(strstr($style, 'width: 555px;') !== FALSE, 'Dialog width respected.');
         }
         else {
@@ -85,21 +85,21 @@ public function testNarrowWidth() {
       $this->enableTheme($theme);
       // Testing at the wider width.
       $this->getSession()->resizeWindow($narrow_width_breakpoint + $offset, $height);
-      $this->drupalGet('/offcanvas-test-links');
-      $this->assertFalse($page->find('css', '.dialog-offcanvas__main-canvas')->hasAttribute('style'), 'Body not padded on wide page load.');
+      $this->drupalGet('/off_canvas-test-links');
+      $this->assertFalse($page->find('css', '.dialog-off-canvas__main-canvas')->hasAttribute('style'), 'Body not padded on wide page load.');
       $page->clickLink("Click Me 1!");
       $this->waitForOffCanvasToOpen();
       // Check that the main canvas is padded when page is not narrow width and
       // tray is open.
-      $web_assert->elementAttributeContains('css', '.dialog-offcanvas__main-canvas', 'style', 'padding-right');
+      $web_assert->elementAttributeContains('css', '.dialog-off-canvas__main-canvas', 'style', 'padding-right');
 
       // Testing at the narrower width.
       $this->getSession()->resizeWindow($narrow_width_breakpoint - $offset, $height);
-      $this->drupalGet('/offcanvas-test-links');
-      $this->assertFalse($page->find('css', '.dialog-offcanvas__main-canvas')->hasAttribute('style'), 'Body not padded on narrow page load.');
+      $this->drupalGet('/off_canvas-test-links');
+      $this->assertFalse($page->find('css', '.dialog-off-canvas__main-canvas')->hasAttribute('style'), 'Body not padded on narrow page load.');
       $page->clickLink("Click Me 1!");
       $this->waitForOffCanvasToOpen();
-      $this->assertFalse($page->find('css', '.dialog-offcanvas__main-canvas')->hasAttribute('style'), 'Body not padded on narrow page with tray open.');
+      $this->assertFalse($page->find('css', '.dialog-off-canvas__main-canvas')->hasAttribute('style'), 'Body not padded on narrow page with tray open.');
     }
   }
 
diff --git a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInBlockFormTest.php b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInBlockFormTest.php
index 04c6e70..8cd53c1 100644
--- a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInBlockFormTest.php
+++ b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInBlockFormTest.php
@@ -53,7 +53,7 @@ protected function setUp() {
   }
 
   /**
-   * Tests opening Offcanvas tray by click blocks and elements in the blocks.
+   * Tests opening Off_canvas tray by click blocks and elements in the blocks.
    *
    * @dataProvider providerTestBlocks
    */
@@ -119,14 +119,14 @@ public function testBlocks($block_id, $new_page_text, $element_selector, $label_
 
     // Exit edit mode using ESC.
     $web_assert->elementTextContains('css', '.contextual-toolbar-tab button', 'Editing');
-    $web_assert->elementAttributeContains('css', '.dialog-offcanvas__main-canvas', 'class', 'js-outside-in-edit-mode');
+    $web_assert->elementAttributeContains('css', '.dialog-off-canvas__main-canvas', 'class', 'js-outside-in-edit-mode');
     // Simulate press the Escape key.
     $this->getSession()->executeScript('jQuery("body").trigger(jQuery.Event("keyup", { keyCode: 27 }));');
     $this->waitForOffCanvasToClose();
     $this->getSession()->wait(100);
     $web_assert->elementTextContains('css', '#drupal-live-announce', 'Exited edit mode.');
     $web_assert->elementTextNotContains('css', '.contextual-toolbar-tab button', 'Editing');
-    $web_assert->elementAttributeNotContains('css', '.dialog-offcanvas__main-canvas', 'class', 'js-outside-in-edit-mode');
+    $web_assert->elementAttributeNotContains('css', '.dialog-off-canvas__main-canvas', 'class', 'js-outside-in-edit-mode');
   }
 
   /**
@@ -258,11 +258,11 @@ public function testQuickEditLinks() {
       $this->openBlockForm($block_selector);
       $page->find('css', $body_selector)->click();
       $web_assert->waitForElementVisible('css', $quick_edit_selector);
-      // Offcanvas should be closed when opening QuickEdit toolbar.
+      // OffCanvas should be closed when opening QuickEdit toolbar.
       $this->waitForOffCanvasToClose();
 
       $this->openBlockForm($block_selector);
-      // QuickEdit toolbar should be closed when opening Offcanvas.
+      // QuickEdit toolbar should be closed when opening OffCanvas.
       $web_assert->elementNotExists('css', $quick_edit_selector);
     }
 
@@ -276,7 +276,7 @@ public function testQuickEditLinks() {
     // Open off-canvas and enter Edit mode via contextual link.
     $this->clickContextualLink($block_selector, "Quick edit");
     $this->waitForOffCanvasToOpen();
-    // QuickEdit toolbar should be closed when opening Offcanvas.
+    // QuickEdit toolbar should be closed when opening OffCanvas.
     $web_assert->elementNotExists('css', $quick_edit_selector);
     // Open QuickEdit toolbar via contextual link while in Edit mode.
     $this->clickContextualLink('.node', "Quick edit", FALSE);
diff --git a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
index 325aec7..7c623c7 100644
--- a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
+++ b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
@@ -42,14 +42,14 @@ public function enableTheme($theme) {
   protected function waitForOffCanvasToOpen() {
     $web_assert = $this->assertSession();
     $web_assert->assertWaitOnAjaxRequest();
-    $web_assert->waitForElementVisible('css', '#drupal-offcanvas');
+    $web_assert->waitForElementVisible('css', '#drupal-off-canvas');
   }
 
   /**
    * Waits for Off-canvas tray to close.
    */
   protected function waitForOffCanvasToClose() {
-    $this->waitForNoElement('#drupal-offcanvas');
+    $this->waitForNoElement('#drupal-off-canvas');
   }
 
   /**
@@ -58,7 +58,7 @@ protected function waitForOffCanvasToClose() {
    * @return \Behat\Mink\Element\NodeElement|null
    */
   protected function getTray() {
-    $tray = $this->getSession()->getPage()->find('css', '.ui-dialog[aria-describedby="drupal-offcanvas"]');
+    $tray = $this->getSession()->getPage()->find('css', '.ui-dialog[aria-describedby="drupal-off-canvas"]');
     $this->assertEquals(FALSE, empty($tray), 'The tray was found.');
     return $tray;
   }
diff --git a/core/modules/outside_in/tests/src/Unit/Ajax/OpenOffCanvasDialogCommandTest.php b/core/modules/outside_in/tests/src/Unit/Ajax/OpenOffCanvasDialogCommandTest.php
index cd14d6d..9840668 100644
--- a/core/modules/outside_in/tests/src/Unit/Ajax/OpenOffCanvasDialogCommandTest.php
+++ b/core/modules/outside_in/tests/src/Unit/Ajax/OpenOffCanvasDialogCommandTest.php
@@ -1,7 +1,6 @@
 <?php
 
 namespace Drupal\Tests\outside_in\Unit\Ajax;
-
 use Drupal\outside_in\Ajax\OpenOffCanvasDialogCommand;
 use Drupal\Tests\UnitTestCase;
 
@@ -19,7 +18,7 @@ public function testRender() {
 
     $expected = [
       'command' => 'openDialog',
-      'selector' => '#drupal-offcanvas',
+      'selector' => '#drupal-off-canvas',
       'settings' => NULL,
       'data' => '<p>Text!</p>',
       'dialogOptions' => [
