tabledrag.css
Same filename in this branch
Same filename in other branches
- 9 core/profiles/demo_umami/themes/umami/css/classy/components/tabledrag.css
- 9 core/themes/olivero/css/components/tabledrag.css
- 9 core/themes/seven/css/classy/components/tabledrag.css
- 9 core/themes/claro/css/components/tabledrag.css
- 9 core/themes/bartik/css/classy/components/tabledrag.css
- 9 core/themes/starterkit_theme/css/components/tabledrag.css
- 9 core/themes/classy/css/components/tabledrag.css
- 8.9.x core/profiles/demo_umami/themes/umami/css/classy/components/tabledrag.css
- 8.9.x core/themes/seven/css/classy/components/tabledrag.css
- 8.9.x core/themes/claro/css/components/tabledrag.css
- 8.9.x core/themes/bartik/css/classy/components/tabledrag.css
- 8.9.x core/themes/classy/css/components/tabledrag.css
- 10 core/profiles/demo_umami/themes/umami/css/classy/components/tabledrag.css
- 10 core/misc/dialog/off-canvas/css/tabledrag.css
- 10 core/themes/olivero/css/components/tabledrag.css
- 10 core/themes/claro/css/components/tabledrag.css
- 10 core/themes/starterkit_theme/css/components/tabledrag.css
Replacement styles for table drag.
Replaces core's tabledrag.module.css.
See also
tabledrag.js
File
-
core/
themes/ claro/ css/ components/ tabledrag.css
View source
- /*
- * DO NOT EDIT THIS FILE.
- * See the following change record for more information,
- * https://www.drupal.org/node/3084859
- * @preserve
- */
-
- /**
- * @file
- * Replacement styles for table drag.
- *
- * Replaces core's tabledrag.module.css.
- *
- * @see tabledrag.js
- */
-
- body.drag {
- cursor: move;
- }
-
- body.drag-y {
- cursor: row-resize;
- }
-
- .draggable-table {
- --table-row--dragging-bg-color: #fe7;
- --table-row--last-dragged-bg-color: #ffb;
- --tabledrag-handle-icon-size: 1.0625rem;
-
- /**
- * Reduce the spacing of draggable table cells.
- */
- }
-
- .draggable-table td:first-child ~ td,
- .draggable-table th:first-child ~ th {
- padding-inline-start: 0;
- }
-
- /* The block region's title row in table. */
-
- .region-title {
- font-weight: bold;
- }
-
- /* Empty region message row in table. */
-
- .region-message {
- color: var(--color-gray-600);
- }
-
- .region-message.region-populated {
- /* If the region is populated, we shouldn't display the empty message. */
- display: none;
- }
-
- /**
- * Remove border-bottom from abbr element. Class is duplicated in the selector
- * to increase weight to be able to win normalize.css selectors.
- */
-
- .tabledrag-changed.tabledrag-changed {
- border-bottom: none;
- }
-
- /* Don't display the abbreviation of 'add-new' table rows. */
-
- .add-new .tabledrag-changed {
- display: none;
- }
-
- .draggable .tabledrag-changed {
- position: relative;
- inset-inline-start: calc(var(--space-xs) * -1);
- }
-
- .tabledrag-cell--only-drag .tabledrag-changed {
- width: var(--space-l);
- min-width: var(--space-l);
- }
-
- /**
- * Draggable row state colors.
- */
-
- .draggable.drag,
- .draggable.drag:focus {
- background-color: var(--table-row--dragging-bg-color);
- }
-
- .draggable.drag-previous {
- background-color: var(--table-row--last-dragged-bg-color);
- }
-
- /* Auto width for weight selects and number inputs. */
-
- .draggable td .form-element--type-select[name$="][_weight]"], /* Multiple field */
- .draggable td .term-weight, /* Taxonomy term list */
- .draggable td .field-weight /* Field UI table */ {
- width: auto;
- }
-
- /**
- * Handle styles.
- */
-
- .tabledrag-handle {
- position: relative;
- z-index: 1;
- overflow: visible;
- cursor: move;
- text-align: center;
- vertical-align: text-top;
- }
-
- .tabledrag-handle::after {
- display: inline-block;
- width: var(--tabledrag-handle-icon-size);
- height: var(--tabledrag-handle-icon-size);
- margin-inline-start: calc(var(--space-m) * -1);
- padding: var(--space-xs) var(--space-m);
- content: "";
- transition: transform 0.1s ease-in-out 0s;
- background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 16 16'%3e%3cpath fill='%23000f33' d='M14.103 5.476a.5.5 0 00-.701-.053.526.526 0 00-.082.713l1.1 1.346H8.512V1.62l1.32 1.113a.501.501 0 00.732-.054.528.528 0 00-.085-.744L8.328.119a.5.5 0 00-.647 0L5.529 1.935a.527.527 0 00-.085.744.504.504 0 00.732.054l1.32-1.113v5.862H1.588L2.68 6.136a.526.526 0 00-.1-.68.5.5 0 00-.675.02L.117 7.67a.525.525 0 000 .66l1.788 2.194a.5.5 0 00.702.053.526.526 0 00.081-.713l-1.1-1.346h5.908v5.862l-1.32-1.113a.501.501 0 00-.698.082.526.526 0 00.051.716l2.152 1.817v-.001a.5.5 0 00.647 0l2.151-1.816a.526.526 0 00.052-.716.501.501 0 00-.699-.082l-1.32 1.113V8.518h5.908l-1.091 1.346a.527.527 0 00.022.776.504.504 0 00.752-.116l1.78-2.194a.527.527 0 000-.66z'/%3e%3c/svg%3e") no-repeat center;
- }
-
- @media (forced-colors: active) {
- .tabledrag-handle::after {
- background: linktext;
- mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 16 16'%3e%3cpath fill='%23000f33' d='M14.103 5.476a.5.5 0 00-.701-.053.526.526 0 00-.082.713l1.1 1.346H8.512V1.62l1.32 1.113a.501.501 0 00.732-.054.528.528 0 00-.085-.744L8.328.119a.5.5 0 00-.647 0L5.529 1.935a.527.527 0 00-.085.744.504.504 0 00.732.054l1.32-1.113v5.862H1.588L2.68 6.136a.526.526 0 00-.1-.68.5.5 0 00-.675.02L.117 7.67a.525.525 0 000 .66l1.788 2.194a.5.5 0 00.702.053.526.526 0 00.081-.713l-1.1-1.346h5.908v5.862l-1.32-1.113a.501.501 0 00-.698.082.526.526 0 00.051.716l2.152 1.817v-.001a.5.5 0 00.647 0l2.151-1.816a.526.526 0 00.052-.716.501.501 0 00-.699-.082l-1.32 1.113V8.518h5.908l-1.091 1.346a.527.527 0 00.022.776.504.504 0 00.752-.116l1.78-2.194a.527.527 0 000-.66z'/%3e%3c/svg%3e");
- mask-repeat: no-repeat;
- mask-position: center;
- }
- }
-
- /* Change icon and cursor if only vertical drag is allowed. */
-
- .tabledrag-handle.tabledrag-handle-y {
- cursor: row-resize;
- }
-
- .tabledrag-handle.tabledrag-handle-y::after {
- background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 8h12'/%3e%3cpath d='M8 2l2 2 -4 0 2 -2'/%3e%3cpath d='M8 14l2 -2 -4 0 2 2'/%3e%3c/svg%3e");
- background-size: 1rem 1rem;
- }
-
- .tabledrag-handle::after,
- .tabledrag-disabled .tabledrag-handle.tabledrag-handle.tabledrag-handle::after {
- transform: scale(1);
- }
-
- .tabledrag-handle:is(:hover, :focus)::after,
- .draggable.drag .tabledrag-handle::after {
- transform: scale(1.25);
- }
-
- .tabledrag-handle:focus {
- outline: none !important;
- box-shadow: none !important;
- }
-
- .tabledrag-handle:focus::before {
- display: block;
- width: calc(var(--space-m) + (var(--space-xs) * 2)); /* Same as height. */
- height: calc(var(--space-m) + (var(--space-xs) * 2)); /* Hande svg height + its vertical padding */
- margin: 0 calc(var(--space-xs) * -1) calc((var(--space-m) + (var(--space-xs) * 2)) * -1); /* Bottom: handle height as negative value. */
- content: "";
- border-radius: var(--base-border-radius);
- outline: var(--outline-size) dotted transparent;
- box-shadow: 0 0 0 var(--focus-border-size) var(--color-focus);
- }
-
- /* Disabled tabledrag handle. */
-
- .tabledrag-disabled .tabledrag-handle {
- cursor: default;
- opacity: 0.4;
- }
-
- .tabledrag-disabled .tabledrag-handle.tabledrag-handle::before {
- content: none;
- }
-
- /**
- * Enhancements for touch-capable screens.
- */
-
- /**
- * Increase handle size.
- */
-
- .touchevents .tabledrag-handle::after {
- padding-block: var(--space-s);
- }
-
- .touchevents .draggable .menu-item__link {
- padding-block: var(--space-xs);
- }
-
- /**
- * Wrapper of the toggle weight button (styled as a link).
- */
-
- .tabledrag-toggle-weight-wrapper {
- text-align: end;
-
- /* Hide nested weight toggles as they are redundant. */
- }
-
- .draggable-table .tabledrag-toggle-weight-wrapper {
- display: none;
- }
-
- /**
- * Keep crowded tabledrag cells vertically centered.
- */
-
- .tabledrag-cell {
- padding-block: 0;
- }
-
- /**
- * If the first table cell is empty (like in a multiple field widget table),
- * we can save some space for the following cells.
- * If it isn't empty (Field UI table, taxonomy term overview page), this CSS
- * class won't be added.
- */
-
- .tabledrag-cell--only-drag {
- width: 1px; /* This forces this cell to use the smallest possible width. */
- padding-inline-end: 0;
- }
-
- .tabledrag-cell-content {
- display: flex;
- align-items: center;
- height: 100%;
- }
-
- .tabledrag-cell-content > * {
- display: table-cell;
- vertical-align: middle;
- }
-
- .tabledrag-cell-content .tree {
- flex-grow: 1;
- }
-
- .tabledrag-cell-content .tabledrag-handle::after {
- vertical-align: middle;
- }
-
- .tabledrag-cell-content__item {
- padding-inline-end: var(--space-xs);
- }
-
- .tabledrag-cell-content__item:empty {
- display: none;
- }
-
- /**
- * Indentation.
- */
-
- .indentation {
- position: relative;
- inset-inline-start: calc(var(--space-xs) * -0.5);
- float: left; /* LTR */
- width: 1.5625rem;
- height: 1.5625rem;
- background: none !important;
- line-height: 0;
- }
-
- .tabledrag-cell-content .indentation {
- /* Fixes Safari bug (16.1 at least) where table rows are overly large when
- using indentation (e.g. re-ordering menu items. */
- display: inline-flex;
- float: none;
- overflow: hidden;
- flex-direction: column;
- height: 100%;
- }
-
- [dir="rtl"] .indentation {
- float: right;
- }
-
- /**
- * Tree is the visual representation for the simultaneously moved draggable
- * rows.
- *
- * These rules are styling the inline SVG that is placed inside the .indentation
- * element.
- */
-
- .tree {
- width: 1.5625rem;
- height: 1.5625rem;
- }
-
- .tree__item {
- display: none;
- }
-
- /* LTR tree child. */
-
- .tree-child path:not(.tree__item-child-ltr) {
- display: none;
- }
-
- .tree-child path.tree__item-child-ltr {
- display: block;
- }
-
- /* RTL tree child. */
-
- [dir="rtl"] .tree-child path:not(.tree__item-child-rtl) {
- display: none;
- }
-
- [dir="rtl"] .tree-child path.tree__item-child-rtl {
- display: block;
- }
-
- /* Last RTL tree child. */
-
- [dir="rtl"] .tree-child-last path:not(.tree__item-child-last-rtl) {
- display: none;
- }
-
- [dir="rtl"] .tree-child-last path.tree__item-child-last-rtl {
- display: block;
- }
-
- /* Last LTR tree child. */
-
- .tree-child-last path:not(.tree__item-child-last-ltr) {
- display: none;
- }
-
- .tree-child-last path.tree__item-child-last-ltr {
- display: block;
- }
-
- /* Horizontal line. */
-
- .tree-child-horizontal path:not(.tree__item-horizontal) {
- display: none;
- }
-
- .tree-child-horizontal path.tree__item-horizontal {
- display: block;
- }
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.