/** * @file * Styles for action links. * * Contains Action link component and the action-links layout styles. */ @import "../base/variables.pcss.css"; /** * Action links layout. */ .action-links, [dir="rtl"] .action-links { margin: var(--space-l) 0; list-style: none; } .action-links__item { display: inline-block; } .action-links__item + .action-links__item > .action-link { margin-left: var(--space-s); /* LTR */ } [dir="rtl"] .action-links__item + .action-links__item > .action-link { margin-right: var(--space-s); margin-left: 0; } .action-links__item + .action-links__item > .action-link--small { margin-left: var(--space-xs); /* LTR */ } [dir="rtl"] .action-links__item + .action-links__item > .action-link--small { margin-right: var(--space-xs); margin-left: 0; } /** * The action link component. */ .action-link { display: inline-block; padding: calc(var(--space-m) - ((var(--space-l) - var(--space-m)) / 2)) var(--space-m); cursor: pointer; text-decoration: none; color: var(--color-gray-800); border-radius: var(--button-border-radius-size); background-color: var(--color-bg); font-size: var(--font-size-base); font-weight: 700; line-height: var(--space-l); /* Bigger line-height needed to prevent the icon from increasing the height */ -webkit-font-smoothing: antialiased; } /* Small variant. */ .no-touchevents .action-link--small { padding: calc(var(--space-s) - ((var(--space-l) - var(--space-s)) / 2)) var(--space-s); font-size: var(--font-size-s); } /* Extra small variant. */ .no-touchevents .action-link--extrasmall { padding: 0 var(--space-xs); font-size: var(--font-size-s); } .action-link + .action-link { margin-left: var(--space-s); /* LTR */ } [dir="rtl"] .action-link + .action-link { margin-right: var(--space-s); margin-left: 0; } .no-touchevents .action-link--small + .action-link--small, .no-touchevents .action-link--extrasmall + .action-link--extrasmall { margin-left: var(--space-xs); /* LTR */ } [dir="rtl"] .no-touchevents .action-link--small + .action-link--small, [dir="rtl"] .no-touchevents .action-link--extrasmall + .action-link--extrasmall { margin-right: var(--space-xs); margin-left: 0; } /** * Action links inside form-actions. * * Add the same margin for action-link inside form-actions as button has. */ .form-actions .action-link { margin-right: var(--space-s); /* LTR */ margin-left: 0; /* LTR */ } [dir="rtl"] .form-actions .action-link { margin-right: 0; margin-left: var(--space-s); } /* Action link states */ .action-link:hover { text-decoration: none; color: var(--color-absolutezero-hover); background-color: var(--color-bgblue-hover); } .action-link:focus { position: relative; z-index: 1; text-decoration: none; } .action-link:active { color: var(--color-absolutezero-active); background-color: var(--color-bgblue-active); } /** * Action link variants. */ /* Danger. */ .action-link--danger { color: var(--color-maximumred); } .action-link--danger:hover { color: var(--color-maximumred-hover); background-color: var(--color-bgred-hover); } .action-link--danger:active { color: var(--color-maximumred-active); background-color: var(--color-bgred-active); } /** * Action link icons with states. * * We use parent-relative units here to follow the .action-link's font size. */ /* Defaults for icons */ .action-link::before { position: relative; top: 0.125rem; /* Set the proper vertical alignment */ display: inline-block; width: 1em; height: 1em; margin-right: 0.5em; /* LTR */ margin-left: calc(var(--space-s) - var(--space-m)); /* LTR */ background-repeat: no-repeat; background-position: center; background-size: contain; } [dir="rtl"] .action-link::before { margin-right: calc(var(--space-s) - var(--space-m)); margin-left: 0.5em; } .no-touchevents .action-link--small::before, .no-touchevents .action-link--extrasmall::before { top: 0.0625rem; /* Set the proper vertical alignment */ width: var(--space-s); height: var(--space-s); } .no-touchevents .action-link--extrasmall::before { margin-right: 0.4em; /* LTR */ margin-left: -0.125rem; /* LTR */ } [dir="rtl"].no-touchevents .action-link--extrasmall::before { margin-right: -0.125rem; margin-left: 0.4em; } /** * Hide action link icons for IE11. * * IE 11 does not display inline svg backgrounds */ @media screen and (-ms-high-contrast: active) { /* stylelint-disable-next-line selector-type-no-unknown */ _:-ms-fullscreen, .action-link::before { display: none; } } /* Plus */ .action-link--icon-plus::before { content: ""; background-image: url(../../images/icons/545560/plus.svg); } .action-link--icon-plus:hover::before { background-image: url(../../images/icons/0036b1/plus.svg); } .action-link--icon-plus:active::before { background-image: url(../../images/icons/00309e/plus.svg); } /* Plus — danger */ .action-link--icon-plus.action-link--danger::before { background-image: url(../../images/icons/d72222/plus.svg); } .action-link--icon-plus.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/plus.svg); } .action-link--icon-plus.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/plus.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-plus.action-link--icon-plus.action-link--icon-plus::before { background-image: url(../../images/icons/windowText/plus.svg); } } /* Trash */ .action-link--icon-trash::before { content: ""; background-image: url(../../images/icons/545560/trash.svg); } .action-link--icon-trash:hover::before { background-image: url(../../images/icons/0036b1/trash.svg); } .action-link--icon-trash:active::before { background-image: url(../../images/icons/00309e/trash.svg); } /* Trash — danger */ .action-link--icon-trash.action-link--danger::before { background-image: url(../../images/icons/d72222/trash.svg); } .action-link--icon-trash.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/trash.svg); } .action-link--icon-trash.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/trash.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-trash.action-link--icon-trash.action-link--icon-trash::before { background-image: url(../../images/icons/windowText/trash.svg) !important; } } /* Ex */ .action-link--icon-ex::before { content: ""; background-image: url(../../images/icons/545560/ex.svg); } .action-link--icon-ex:hover::before { background-image: url(../../images/icons/0036b1/ex.svg); } .action-link--icon-ex:active::before { background-image: url(../../images/icons/00309e/ex.svg); } /* Ex — danger */ .action-link--icon-ex.action-link--danger::before { background-image: url(../../images/icons/d72222/ex.svg); } .action-link--icon-ex.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/ex.svg); } .action-link--icon-ex.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/ex.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-ex.action-link--icon-ex.action-link--icon-ex::before { background-image: url(../../images/icons/windowText/ex.svg) !important; } } /* Checkmark */ .action-link--icon-checkmark::before { content: ""; background-image: url(../../images/icons/545560/checkmark.svg); } .action-link--icon-checkmark:hover::before { background-image: url(../../images/icons/0036b1/checkmark.svg); } .action-link--icon-checkmark:active::before { background-image: url(../../images/icons/00309e/checkmark.svg); } /* Checkmark — danger */ .action-link--icon-checkmark.action-link--danger::before { background-image: url(../../images/icons/d72222/checkmark.svg); } .action-link--icon-checkmark.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/checkmark.svg); } .action-link--icon-checkmark.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/checkmark.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-checkmark.action-link--icon-checkmark.action-link--icon-checkmark::before { background-image: url(../../images/icons/windowText/checkmark.svg) !important; } } /* Cog */ .action-link--icon-cog::before { content: ""; background-image: url(../../images/icons/545560/cog.svg); } .action-link--icon-cog:hover::before { background-image: url(../../images/icons/0036b1/cog.svg); } .action-link--icon-cog:active::before { background-image: url(../../images/icons/00309e/cog.svg); } /* Cog — danger */ .action-link--icon-cog.action-link--danger::before { background-image: url(../../images/icons/d72222/cog.svg); } .action-link--icon-cog.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/cog.svg); } .action-link--icon-cog.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/cog.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-cog.action-link--icon-cog.action-link--icon-cog::before { background-image: url(../../images/icons/windowText/cog.svg) !important; } } /* Show */ .action-link--icon-show::before { content: ""; background-image: url(../../images/icons/545560/show.svg); } .action-link--icon-show:hover::before { background-image: url(../../images/icons/0036b1/show.svg); } .action-link--icon-show:active::before { background-image: url(../../images/icons/00309e/show.svg); } /* Show - danger */ .action-link--icon-show.action-link--danger::before { background-image: url(../../images/icons/d72222/show.svg); } .action-link--icon-show.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/show.svg); } .action-link--icon-show.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/show.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-show.action-link--icon-show.action-link--icon-show::before { background-image: url(../../images/icons/windowText/show.svg) !important; } } /* Hide */ .action-link--icon-hide::before { content: ""; background-image: url(../../images/icons/545560/hide.svg); } .action-link--icon-hide:hover::before { background-image: url(../../images/icons/0036b1/hide.svg); } .action-link--icon-hide:active::before { background-image: url(../../images/icons/00309e/hide.svg); } /* Hide - danger */ .action-link--icon-hide.action-link--danger::before { background-image: url(../../images/icons/d72222/hide.svg); } .action-link--icon-hide.action-link--danger:hover::before { background-image: url(../../images/icons/c11f1f/hide.svg); } .action-link--icon-hide.action-link--danger:active::before { background-image: url(../../images/icons/ab1b1b/hide.svg); } @media screen and (-ms-high-contrast: active) { .action-link--icon-hide.action-link--icon-hide.action-link--icon-hide::before { background-image: url(../../images/icons/windowText/hide.svg); } } /* Key */ .action-link--icon-key::before { content: ""; background-image: url("../../images/icons/545560/key.svg"); } .action-link--icon-key:hover::before { background-image: url("../../images/icons/0036b1/key.svg"); } .action-link--icon-key:active::before { background-image: url("../../images/icons/00309e/key.svg"); } /* Key — danger */ .action-link--icon-key.action-link--danger::before { background-image: url("../../images/icons/d72222/key.svg"); } .action-link--icon-key.action-link--danger:hover::before { background-image: url("../../images/icons/c11f1f/key.svg"); } .action-link--icon-key.action-link--danger:active::before { background-image: url("../../images/icons/ab1b1b/key.svg"); } @media screen and (-ms-high-contrast: active) { .action-link--icon-key.action-link--icon-key.action-link--icon-key::before { background-image: url("../../images/icons/windowText/key.svg") !important; } } /* Question Mark */ .action-link--icon-questionmark::before { content: ""; background-image: url("../../images/icons/545560/questionmark.svg"); } .action-link--icon-questionmark:hover::before { background-image: url("../../images/icons/0036b1/questionmark.svg"); } .action-link--icon-questionmark:active::before { background-image: url("../../images/icons/00309e/questionmark.svg"); } /* Question Mark - danger */ .action-link--icon-questionmark.action-link--danger::before { background-image: url("../../images/icons/d72222/questionmark.svg"); } .action-link--icon-questionmark.action-link--danger:hover::before { background-image: url("../../images/icons/c11f1f/questionmark.svg"); } .action-link--icon-questionmark.action-link--danger:active::before { background-image: url("../../images/icons/ab1b1b/questionmark.svg"); } @media screen and (-ms-high-contrast: active) { .action-link--icon-questionmark.action-link--icon-questionmark.action-link--icon-questionmark::before { background-image: url("../../images/icons/windowText/questionmark.svg") !important; } }