No notes defined.
<div class="sds-framedChoice sds-showCustomIndicatorHover">
<input name="framedChoiceInput" type="radio" id="framed-radio" class="sds-framedChoice__input sr-only">
<div class="sds-framedChoice__body" data-scope-wrapper="box" data-scope="flat">
<div class="sds-framedChoice__content sds-staticGapMd">
<div class="sds-framedChoice__inputShape d-flex">
<span class="sds-radioDot " aria-hidden="true"></span>
</div>
<div class="sds-framedChoice__media">
<div class="sds-media -mediaSm">
<img src="../../media/spuerkeess-site/components/product/cards/sdsillu-product-card-classic.png" alt="">
</div>
</div>
<div class="flex-grow-1">
<div class="sds-staticStackXxs">
<p class="h4">
<label for="framed-radio" class="stretched-link">John Doe</label>
</p>
<p>
<label for="framed-radio" class="stretched-link">Test</label>
</p>
</div>
</div>
<div class="sds-aboveClickArea">
<button type="button" class="sds-infoDot" data-toggle="modal" data-target="#">
<span class="sds-icon sds-icon-infocircleborder"></span>
<span class="sr-only">Show more info</span>
</button>
</div>
</div>
</div>
</div>
{% extends "@framed-choice-frame" %}
{% block media %}
{% render "@media--sm" %}
{% endblock %}
{% block text %}
<div class="{{ namespace }}staticStackXxs">
<p class="h4">
<label for="{{ id }}" class="stretched-link">{{ title }}</label>
</p>
<p>
<label for="{{ id }}" class="stretched-link">{{ text }}</label>
</p>
</div>
{% endblock %}
/* variables specific to current element */
$element-specific-variables: "";
.#{$namespace}framedChoice {
/* Save root element context for easy access if nesting is needed */
$self: &;
/* properties of current element + media queries */
position: relative;
display: flex;
flex-direction: column;
border-radius: var(--comp-framed-choice-border-radius);
@supports (container-type: size) {
container-type: inline-size;
container-name: framed-choice;
}
/* Pseudo Elements */
&::before {
}
&::after {
}
/*
Include elements that are linked to the current element but have to reside at the root level of the stylesheet
(e.g: keyframes)
*/
@at-root {
}
/* children - write selector in full in comments in order to facilitate search */
&__input {
&:checked ~ * {
@include custom-prop-fallback("border-color","comp-framed-choice-checked-enabled-border-color");
}
&:checked ~ #{$self}__body {
z-index: z("low");
}
&:disabled ~ #{$self}__body {
cursor: not-allowed;
@include custom-prop-fallback("background-color","comp-framed-choice-disabled-background-color");
}
&[disabled] ~ *,
&[disabled]:checked ~ * {
@include custom-prop-fallback("border-color","comp-framed-choice-disabled-border-color");
}
@at-root input[type="radio"]#{&} {
&:checked ~ * {
#{$self}__inputShape > * {
@include radioInputChecked();
}
}
&:focus-visible ~ * {
#{$self}__inputShape > * {
@include radioInputFocused();
}
}
&[disabled] {
~ * #{$self}__inputShape > * {
@include radioInputDisabled();
}
&:checked ~ * {
#{$self}__inputShape > * {
@include radioInputDisabledChecked();
}
}
}
}
@at-root input[type="checkbox"]#{&} {
&:checked ~ * {
#{$self}__inputShape > * {
@include checkboxInputChecked();
}
}
&:focus-visible ~ * {
#{$self}__inputShape > * {
@include checkboxFocused();
}
}
&[disabled] {
~ * #{$self}__inputShape > * {
@include checkboxInputDisabled();
}
&:checked ~ * {
#{$self}__inputShape > * {
@include checkboxInputDisabledChecked();
}
}
}
}
&.is-invalid ~ #{$self}__body {
position: relative;
z-index: z("low");
@include custom-prop-fallback("background-color", "comp-framed-choice-error-background-color");
@include custom-prop-fallback("border-color", "comp-framed-choice-error-border-color");
}
}
// framedChoice__body
&__body {
// follows same logic as parent
flex-grow: 1;
padding: var(--comp-framed-choice-inset-v) var(--comp-framed-choice-inset-h);
border: var(--comp-framed-choice-border-width) solid var(--comp-framed-choice-border-color);
border-radius: inherit;
cursor: pointer;
}
&__media {
display: none;
}
@supports (container-type: size) {
@container framed-choice (width > 450px) {
#{$self}__media {
display: block;
}
}
}
&__content {
display: flex;
align-items: center;
}
&__collapseInner {
@include custom-prop-fallback("padding-top","comp-framed-choice-stack");
}
/* modifiers */
// framedChoice -altStyle
&.-altStyle {
// follows same logic as base element
}
/* random parent element */
/*
*
* Syntax : .randomParentElt & {}
*
*/
// @TODO remove once old inputs not in use anymore
.invalid-feedback {
padding-left: 0;
}
/* Pseudo Classes */
&:hover {
@media (hover: hover) {
}
}
&:focus-visible {
}
&:active {
}
&:focus,
&:active {
}
}