Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x

views_ui.admin.theme.pcss.css

View UI admin theme.

Replaces the styles provided by the views_ui module.

File

core/themes/claro/css/theme/views_ui.admin.theme.pcss.css

View source
  1. /**
  2. * @file
  3. * View UI admin theme.
  4. *
  5. * Replaces the styles provided by the views_ui module.
  6. */
  7. .views-admin .links {
  8. margin: 0;
  9. list-style: none outside none;
  10. }
  11. .views-admin a:hover {
  12. text-decoration: none;
  13. }
  14. .views-admin .icon {
  15. width: 16px;
  16. height: 16px;
  17. }
  18. .views-admin .icon,
  19. .views-admin .icon-text {
  20. background-image: url(../../../../modules/views_ui/images/sprites.png);
  21. background-repeat: no-repeat;
  22. background-attachment: scroll;
  23. background-position: left top; /* LTR */
  24. }
  25. [dir="rtl"] .views-admin .icon,
  26. [dir="rtl"] .views-admin .icon-text {
  27. background-position: right top;
  28. }
  29. .views-admin a.icon {
  30. border: 1px solid #ddd;
  31. border-radius: 4px;
  32. background:
  33. linear-gradient(-90deg, #fff 0, #e8e8e8 100%) no-repeat,
  34. repeat-y;
  35. box-shadow: 0 0 0 rgba(0, 0, 0, 0.3333) inset;
  36. }
  37. .views-admin a.icon:hover {
  38. border-color: #d0d0d0;
  39. box-shadow: 0 0 1px rgba(0, 0, 0, 0.3333) inset;
  40. }
  41. .views-admin a.icon:active {
  42. border-color: #c0c0c0;
  43. }
  44. .views-admin span.icon {
  45. position: relative;
  46. float: left; /* LTR */
  47. }
  48. [dir="rtl"] .views-admin span.icon {
  49. float: right;
  50. }
  51. .views-admin .icon.compact {
  52. display: block;
  53. overflow: hidden;
  54. text-indent: -9999px;
  55. direction: ltr;
  56. }
  57. /* Targets any element with an icon -> text combo */
  58. .views-admin .icon-text {
  59. padding-left: 19px; /* LTR */
  60. }
  61. [dir="rtl"] .views-admin .icon-text {
  62. padding-right: 19px;
  63. padding-left: 0;
  64. }
  65. .views-admin .icon.linked {
  66. background-position: center -153px;
  67. }
  68. .views-admin .icon.unlinked {
  69. background-position: center -195px;
  70. }
  71. .views-admin .icon.delete {
  72. background-position: center -52px;
  73. }
  74. .views-admin a.icon.delete {
  75. background-position:
  76. center -52px,
  77. left top; /* LTR */
  78. }
  79. [dir="rtl"] .views-admin a.icon.delete {
  80. background-position:
  81. center -52px,
  82. right top;
  83. }
  84. .views-admin .icon.rearrange {
  85. background-position: center -111px;
  86. }
  87. .views-admin a.icon.rearrange {
  88. background-position:
  89. center -111px,
  90. left top; /* LTR */
  91. }
  92. [dir="rtl"] .views-admin a.icon.rearrange {
  93. background-position:
  94. center -111px,
  95. right top;
  96. }
  97. details.box-padding {
  98. border: none;
  99. }
  100. .views-admin details details {
  101. margin-bottom: 0;
  102. }
  103. .form-item {
  104. margin-top: 9px;
  105. padding-top: 0;
  106. padding-bottom: 0;
  107. }
  108. .form-type-checkbox {
  109. margin-top: 6px;
  110. }
  111. .form-checkbox,
  112. .form-radio {
  113. vertical-align: baseline;
  114. }
  115. /* Indent form elements so they're directly underneath the label of the checkbox that reveals them */
  116. .views-admin .form-type-checkbox + .form-wrapper {
  117. margin-left: 16px; /* LTR */
  118. }
  119. [dir="rtl"] .views-admin .form-type-checkbox + .form-wrapper {
  120. margin-right: 16px;
  121. margin-left: 0;
  122. }
  123. /* Hide 'remove' checkboxes. */
  124. .views-remove-checkbox {
  125. display: none;
  126. }
  127. /* sizes the labels of checkboxes and radio button to the height of the text */
  128. .views-admin .form-type-checkbox label,
  129. .views-admin .form-type-radio label {
  130. line-height: 2;
  131. }
  132. .views-admin-dependent .form-item {
  133. margin-top: 6px;
  134. margin-bottom: 6px;
  135. }
  136. .views-ui-view-name h3 {
  137. margin: 0.25em 0;
  138. font-weight: bold;
  139. }
  140. .view-changed {
  141. margin-bottom: 21px;
  142. }
  143. .views-admin .unit-title {
  144. margin-top: 18px;
  145. margin-bottom: 0;
  146. font-size: 15px;
  147. line-height: 1.6154;
  148. }
  149. .views-ui-view-displays ul {
  150. margin-left: 0; /* LTR */
  151. padding-left: 0; /* LTR */
  152. list-style: none;
  153. }
  154. [dir="rtl"] .views-ui-view-displays ul {
  155. margin-right: 0;
  156. margin-left: inherit;
  157. padding-right: 0;
  158. padding-left: inherit;
  159. }
  160. /* These header classes are ambiguous and should be scoped to th elements */
  161. .views-ui-name {
  162. width: 20%;
  163. }
  164. .views-ui-description {
  165. width: 30%;
  166. }
  167. .views-ui-machine-name {
  168. width: 15%;
  169. }
  170. .views-ui-displays {
  171. width: 25%;
  172. }
  173. .views-ui-operations {
  174. width: 10%;
  175. }
  176. /**
  177. * I wish this didn't have to be so specific
  178. */
  179. .form-item-description-enable + .form-item-description {
  180. margin-top: 0;
  181. }
  182. .form-item-description-enable label {
  183. font-weight: bold;
  184. }
  185. .form-item-page-create,
  186. .form-item-block-create {
  187. margin-top: 13px;
  188. }
  189. .form-item-page-create label,
  190. .form-item-block-create label,
  191. .form-item-rest-export-create label {
  192. font-weight: bold;
  193. }
  194. /* This makes the form elements after the "Display Format" label flow underneath the label */
  195. .form-item-page-style-style-plugin > label,
  196. .form-item-block-style-style-plugin > label {
  197. display: block;
  198. }
  199. .views-attachment .options-set label {
  200. font-weight: normal;
  201. }
  202. /* Styling for the form that allows views filters to be rearranged. */
  203. .group-populated {
  204. display: none;
  205. }
  206. td.group-title {
  207. font-weight: bold;
  208. }
  209. .views-ui-dialog td.group-title {
  210. height: 1px;
  211. margin: 0;
  212. padding: 0;
  213. }
  214. .views-ui-dialog td.group-title span {
  215. display: block;
  216. overflow: hidden;
  217. height: 1px;
  218. }
  219. .group-message .form-submit,
  220. .views-remove-group-link,
  221. .views-add-group {
  222. float: right; /* LTR */
  223. clear: both;
  224. }
  225. [dir="rtl"] .group-message .form-submit,
  226. [dir="rtl"] .views-remove-group-link,
  227. [dir="rtl"] .views-add-group {
  228. float: left;
  229. }
  230. .views-operator-label {
  231. position: absolute;
  232. z-index: 1;
  233. bottom: -13px;
  234. padding: 0.5px 6px;
  235. text-transform: uppercase;
  236. border: 1px solid var(--color-gray-200);
  237. background: #fff;
  238. font-weight: bold;
  239. font-style: italic;
  240. }
  241. .grouped-description,
  242. .exposed-description {
  243. float: left; /* LTR */
  244. padding-top: 3px;
  245. padding-right: 10px; /* LTR */
  246. }
  247. [dir="rtl"] .grouped-description,
  248. [dir="rtl"] .exposed-description {
  249. float: right;
  250. padding-right: 0;
  251. padding-left: 10px;
  252. }
  253. .views-displays {
  254. padding-bottom: 36px;
  255. border-top: 1px solid var(--color-gray-200-o-80);
  256. border-right: 1px solid var(--color-gray-200-o-80);
  257. border-left: 1px solid var(--color-gray-200-o-80);
  258. }
  259. .views-display-top {
  260. position: relative;
  261. display: flex;
  262. flex-wrap: wrap;
  263. justify-content: space-between;
  264. padding: var(--space-s) var(--space-s) calc(var(--space-s) - 5px);
  265. border-bottom: 1px solid var(--color-gray-200-o-80);
  266. background-color: var(--color-gray-050);
  267. }
  268. .form-edit .form-actions,
  269. .form-edit .field-actions {
  270. margin-top: 0;
  271. padding: var(--space-s) var(--space-m);
  272. border-right: 1px solid var(--color-gray-200-o-80);
  273. border-bottom: 1px solid var(--color-gray-200-o-80);
  274. border-left: 1px solid var(--color-gray-200-o-80);
  275. background-color: var(--color-gray-050);
  276. }
  277. .edit-display-settings {
  278. margin: var(--space-l) var(--space-l) 0 var(--space-l);
  279. }
  280. .edit-display-settings-top.views-ui-display-tab-bucket.views-ui-display-tab-bucket {
  281. position: relative;
  282. display: flex;
  283. flex-wrap: wrap;
  284. justify-content: space-between;
  285. margin: 0 0 var(--space-l);
  286. padding: 0;
  287. border-bottom: none;
  288. line-height: 20px;
  289. }
  290. .edit-display-settings-top.views-ui-display-tab-bucket .views-display-setting {
  291. padding: 0.125rem 0 0;
  292. }
  293. .views-display-column {
  294. border: 1px solid var(--color-gray-200-o-80);
  295. border-radius: var(--base-border-radius);
  296. box-shadow: var(--details-box-shadow);
  297. }
  298. .views-display-column + .views-display-column {
  299. margin-top: 0;
  300. }
  301. .view-preview-form .form-item--view-args,
  302. .view-preview-form .form-actions,
  303. .view-preview-form .field-actions {
  304. margin-top: 5px;
  305. }
  306. .view-preview-form .views-bulk-actions__item {
  307. margin-block-start: 0;
  308. }
  309. .view-preview-form .arguments-preview {
  310. font-size: 1em;
  311. }
  312. .view-preview-form .form-item--view-args {
  313. margin-top: var(--space-m);
  314. }
  315. .view-preview-form .arguments-preview,
  316. .view-preview-form .form-item--view-args {
  317. margin-right: var(--space-m);
  318. margin-left: var(--space-m);
  319. }
  320. .preview-submit-wrapper {
  321. display: inline-block;
  322. }
  323. .form-item--live-preview,
  324. .view-preview-form .form-actions,
  325. .view-preview-form .field-actions {
  326. vertical-align: top;
  327. }
  328. @media screen and (min-width: 45em) {
  329. /* 720px */
  330. .view-preview-form .form-type-textfield .description {
  331. white-space: nowrap;
  332. }
  333. }
  334. /* These are the individual "buckets," or boxes, inside the display settings area */
  335. .views-ui-display-tab-bucket.views-ui-display-tab-bucket {
  336. position: relative;
  337. margin: 0 0 var(--space-xs);
  338. padding-top: var(--space-xs);
  339. padding-bottom: var(--space-xs);
  340. border-bottom: 1px solid var(--color-gray-200-o-80);
  341. line-height: 20px;
  342. }
  343. .views-ui-display-tab-bucket:last-of-type {
  344. margin-bottom: 0;
  345. border-bottom: none;
  346. }
  347. .views-ui-display-tab-bucket + .views-ui-display-tab-bucket {
  348. border-top: medium none;
  349. }
  350. .views-ui-display-tab-bucket__header {
  351. display: inline-flex;
  352. justify-content: space-between;
  353. box-sizing: border-box;
  354. width: 100%;
  355. padding: var(--space-s) var(--space-m) calc(var(--space-s) + 2px);
  356. }
  357. .views-ui-display-tab-bucket__title {
  358. margin: 0;
  359. font-size: var(--font-size-base);
  360. }
  361. .views-ui-display-tab-bucket.access {
  362. padding-top: 0;
  363. }
  364. .views-ui-display-tab-bucket.page-settings {
  365. border-bottom: medium none;
  366. }
  367. /** Applies an overridden(italics) font style to overridden buckets.
  368. * The better way to implement this would be to add the overridden class
  369. * to the bucket header when the bucket is overridden and style it as a
  370. * generic icon classed element. For the moment, we'll style the bucket
  371. * header specifically with the overridden font style.
  372. */
  373. .views-ui-display-tab-setting.overridden,
  374. .views-ui-display-tab-bucket.overridden .views-ui-display-tab-bucket__title {
  375. font-style: italic;
  376. }
  377. /* This is each row within one of the "boxes." */
  378. .views-ui-display-tab-bucket .views-display-setting {
  379. display: flex;
  380. flex-wrap: wrap;
  381. padding: var(--space-xs) var(--space-m);
  382. color: #666;
  383. font-size: var(--font-size-s);
  384. }
  385. .views-ui-display-tab-actions.views-ui-display-tab-bucket .views-display-setting {
  386. background-color: transparent;
  387. }
  388. .views-ui-display-tab-bucket .views-group-text {
  389. margin-top: 6px;
  390. margin-bottom: 6px;
  391. }
  392. .views-ui-display-tab-bucket__actions {
  393. margin-left: var(--space-xs); /* LTR */
  394. }
  395. [dir="rtl"] .views-ui-display-tab-bucket__actions {
  396. margin-right: var(--space-xs);
  397. margin-left: 0;
  398. }
  399. .views-display-setting .label {
  400. margin-right: var(--space-xs); /* LTR */
  401. white-space: nowrap;
  402. }
  403. [dir="rtl"] .views-display-setting .label {
  404. margin-right: 0;
  405. margin-left: var(--space-xs);
  406. }
  407. .label--separator.label--separator {
  408. margin-right: var(--space-xs);
  409. margin-left: var(--space-xs);
  410. }
  411. .views-edit-view {
  412. margin-bottom: 15px;
  413. }
  414. .views-edit-view.disabled .views-displays {
  415. background-color: var(--color-red-020);
  416. }
  417. .views-edit-view.disabled .views-display-column {
  418. background: var(--color-white);
  419. }
  420. /* The contents of the popup dialog on the views edit form. */
  421. .views-filterable-options .form-type-checkbox {
  422. padding: 5px 8px;
  423. border-top: none;
  424. }
  425. .filterable-option .form-item {
  426. margin-top: 0;
  427. margin-bottom: 0;
  428. }
  429. .views-filterable-options .form-type-checkbox .description {
  430. margin-top: 0;
  431. margin-bottom: 0;
  432. }
  433. .views-filterable-options-controls .form-item {
  434. width: 30%;
  435. margin: 0 0 0 2%; /* LTR */
  436. }
  437. [dir="rtl"] .views-filterable-options-controls .form-item {
  438. margin: 0 2% 0 0;
  439. }
  440. .views-filterable-options-controls input,
  441. .views-filterable-options-controls select {
  442. width: 100%;
  443. }
  444. .views-ui-dialog.views-ui-dialog > .ui-dialog-content {
  445. padding: 0;
  446. }
  447. .views-ui-dialog .views-filterable-options {
  448. margin-bottom: 10px;
  449. }
  450. [id^="views-ui-add-handler-form"] .scroll {
  451. padding-top: 0;
  452. padding-bottom: 0;
  453. }
  454. .views-ui-dialog .views-add-form-selected {
  455. padding: 0 1rem;
  456. }
  457. .views-ui-dialog .views-add-form-selected > div {
  458. display: block;
  459. margin: 0;
  460. padding: 0.3rem 0.8rem;
  461. border: 1px solid #dedfe4;
  462. border-radius: 2px 2px 0 0;
  463. box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  464. }
  465. .views-ui-dialog .form-item-selected {
  466. margin: 0;
  467. padding: 6px 16px;
  468. }
  469. .views-ui-dialog .views-add-form-selected .views-selected-options {
  470. display: inline;
  471. }
  472. .views-ui-dialog.views-ui-dialog-scroll .ui-dialog-titlebar {
  473. border: none;
  474. }
  475. .views-ui-dialog .views-offset-top:not(:empty) {
  476. position: relative;
  477. padding: var(--space-s) var(--space-m) var(--space-xs);
  478. background-color: var(--color-gray-050);
  479. }
  480. .views-ui-dialog .views-offset-top:not(:empty)::after {
  481. position: absolute;
  482. bottom: 0;
  483. left: 0;
  484. width: 100%;
  485. height: 3px;
  486. content: "";
  487. background: linear-gradient(to bottom, rgba(80, 81, 86, 0.11) 0%, rgba(18, 19, 20, 0.02) 49%, rgba(18, 19, 20, 0) 100%);
  488. }
  489. .views-ui-dialog .views-offset-top > * {
  490. margin: 0;
  491. }
  492. .views-ui-dialog .views-offset-top .form-item {
  493. max-width: 40%;
  494. margin: 0 var(--space-s) var(--space-s) 0;
  495. }
  496. .views-ui-dialog .tabledrag-toggle-weight-wrapper {
  497. margin: 0 0 var(--space-m) 0;
  498. }
  499. .views-ui-dialog details .item-list {
  500. padding-left: 2em; /* LTR */
  501. }
  502. [dir="rtl"] .views-ui-dialog details .item-list {
  503. padding-right: 2em;
  504. padding-left: 0;
  505. }
  506. .views-display-columns .details-wrapper {
  507. margin: 0;
  508. }
  509. .views-ui-rearrange-filter-form table {
  510. border-collapse: collapse;
  511. }
  512. .views-ui-rearrange-filter-form tr td[rowspan] {
  513. border: 1px solid var(--color-gray-200);
  514. }
  515. .views-ui-rearrange-filter-form tr[id^="views-row"] {
  516. border-right: 1px solid #cdcdcd; /* LTR */
  517. }
  518. [dir="rtl"] .views-ui-rearrange-filter-form tr[id^="views-row"] {
  519. border-right: 0;
  520. border-left: 1px solid #cdcdcd;
  521. }
  522. .views-ui-rearrange-filter-form .draggable td {
  523. border-bottom: 0.0625rem solid var(--color-gray-200);
  524. }
  525. .views-ui-rearrange-filter-form .group-empty {
  526. border-bottom: 1px solid #cdcdcd;
  527. }
  528. .form-item-options-expose-required,
  529. .form-item-options-expose-label,
  530. .form-item-options-expose-field-identifier,
  531. .form-item-options-expose-description {
  532. margin-top: 6px;
  533. margin-bottom: 6px;
  534. margin-left: 18px; /* LTR */
  535. }
  536. [dir="rtl"] .form-item-options-expose-required,
  537. [dir="rtl"] .form-item-options-expose-label,
  538. [dir="rtl"] .form-item-options-expose-field-identifier,
  539. [dir="rtl"] .form-item-options-expose-description {
  540. margin-right: 18px;
  541. margin-left: 0;
  542. }
  543. .views-preview-wrapper {
  544. border: 1px solid #ccc;
  545. }
  546. .view-preview-form {
  547. position: relative;
  548. }
  549. .view-preview-form__title {
  550. margin-top: 0;
  551. padding: 8px 12px;
  552. border-bottom: 1px solid #ccc;
  553. background-color: var(--color-gray-050);
  554. }
  555. .view-preview-form .form-item--live-preview {
  556. position: absolute;
  557. top: 0.6875rem;
  558. right: var(--space-s);
  559. margin-top: 2px;
  560. margin-left: 2px; /* LTR */
  561. }
  562. [dir="rtl"] .view-preview-form .form-item--live-preview {
  563. right: auto;
  564. left: var(--space-s);
  565. margin-right: 2px;
  566. margin-left: 0;
  567. }
  568. .views-live-preview {
  569. padding: var(--space-m);
  570. }
  571. .views-live-preview .views-query-info {
  572. overflow: auto;
  573. }
  574. .views-live-preview .section-title {
  575. display: inline-block;
  576. margin-top: 0;
  577. margin-bottom: 0;
  578. color: var(--color-gray-800);
  579. font-size: 13px;
  580. font-weight: normal;
  581. line-height: 1.6154;
  582. }
  583. .views-live-preview .view > * {
  584. margin-top: var(--space-m);
  585. }
  586. .views-live-preview .preview-section {
  587. margin: 0 -5px;
  588. padding: 3px 5px;
  589. border: 1px dashed #dedede;
  590. }
  591. .views-live-preview li.views-row + li.views-row {
  592. margin-top: 18px;
  593. }
  594. /* The div.views-row is intentional and excludes li.views-row, for example */
  595. .views-live-preview div.views-row + div.views-row {
  596. margin-top: 36px;
  597. }
  598. .views-query-info table {
  599. margin: 10px 0;
  600. border-spacing: 0;
  601. border-collapse: separate;
  602. border-color: var(--color-bg);
  603. }
  604. .views-query-info table tr {
  605. background-color: var(--color-gray-050);
  606. }
  607. .views-query-info table th,
  608. .views-query-info table td {
  609. padding: var(--space-xs) var(--space-l);
  610. font-size: var(--font-size-s);
  611. }
  612. .messages {
  613. margin-bottom: 18px;
  614. line-height: 1.4555;
  615. }
  616. .js .dropbutton-wrapper .dropbutton .dropbutton-action > .ajax-progress-throbber {
  617. position: absolute;
  618. z-index: 2;
  619. top: -1px;
  620. right: -5px; /* LTR */
  621. }
  622. [dir="rtl"].js .dropbutton-wrapper .dropbutton .dropbutton-action > .ajax-progress-throbber {
  623. right: auto;
  624. left: -5px;
  625. }
  626. /**
  627. * Position dropbuttons with flexbox instead after the dropbuttons have been
  628. * converted to splitbuttons.
  629. *
  630. * @see https://www.drupal.org/project/drupal/issues/3134107
  631. * @see https://www.drupal.org/project/drupal/issues/1899236
  632. */
  633. .edit-display-settings-top.views-ui-display-tab-bucket .dropbutton-wrapper {
  634. top: 0.8125rem;
  635. right: var(--space-s); /* LTR */
  636. }
  637. [dir="rtl"] .edit-display-settings-top.views-ui-display-tab-bucket .dropbutton-wrapper {
  638. right: auto;
  639. left: var(--space-s);
  640. }
  641. .views-list-section {
  642. margin-bottom: 2em;
  643. }
  644. .form-textarea-wrapper,
  645. .form-item-options-content {
  646. width: 100%;
  647. }
  648. .views-messages .messages-list,
  649. .views-messages .messages-list__item {
  650. margin-top: 0;
  651. margin-bottom: 0;
  652. }
  653. /**
  654. * Styles on devices with touchevents.
  655. */
  656. html:not(.no-touchevents) .views-ui-display-tab-bucket__header--actions {
  657. padding: var(--space-l) var(--space-xs);
  658. }
  659. html:not(.no-touchevents) .edit-display-settings-top.views-ui-display-tab-bucket {
  660. padding: var(--space-m) var(--space-xs);
  661. }

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal