// // Button groups // -------------------------------------------------- // Make the div behave like a button .btn-group, .btn-group-vertical { position: relative; display: inline-block; vertical-align: middle; // match .btn alignment given font-size hack above > .btn { position: relative; float: left; // Bring the "active" button to the front &:hover, &:focus, &:active, &.active { z-index: 2; } &:focus { // Remove focus outline when dropdown JS adds it after closing the menu outline: 0; } } } // Prevent double borders when buttons are next to each other .btn-group { .btn + .btn, .btn + .btn-group, .btn-group + .btn, .btn-group + .btn-group { margin-left: -1px; } } // Optional: Group multiple button groups together for a toolbar .btn-toolbar { margin-left: -5px; // Offset the first child's margin &:extend(.clearfix all); .btn-group, .input-group { float: left; } > .btn, > .btn-group, > .input-group { margin-left: 5px; } } .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { border-radius: 0; } // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match .btn-group > .btn:first-child { margin-left: 0; &:not(:last-child):not(.dropdown-toggle) { .border-right-radius(0); } } // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it .btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { .border-left-radius(0); } // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) .btn-group > .btn-group { float: left; } .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group > .btn-group:first-child { > .btn:last-child, > .dropdown-toggle { .border-right-radius(0); } } .btn-group > .btn-group:last-child > .btn:first-child { .border-left-radius(0); } // On active and open, don't show outline .btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0; } // Sizing // // Remix the default button sizing classes into new ones for easier manipulation. .btn-group-xs > .btn { &:extend(.btn-xs); } .btn-group-sm > .btn { &:extend(.btn-sm); } .btn-group-lg > .btn { &:extend(.btn-lg); } // Split button dropdowns // ---------------------- // Give the line between buttons some depth .btn-group > .btn + .dropdown-toggle { padding-left: 8px; padding-right: 8px; } .btn-group > .btn-lg + .dropdown-toggle { padding-left: 12px; padding-right: 12px; } // The clickable button for toggling the menu // Remove the gradient and set the same inset shadow as the :active state .btn-group.open .dropdown-toggle { .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); // Show no shadow for `.btn-link` since it has no other button styles. &.btn-link { .box-shadow(none); } } // Reposition the caret .btn .caret { margin-left: 0; } // Carets in other button sizes .btn-lg .caret { border-width: @caret-width-large @caret-width-large 0; border-bottom-width: 0; } // Upside down carets for .dropup .dropup .btn-lg .caret { border-width: 0 @caret-width-large @caret-width-large; } // Vertical button groups // ---------------------- .btn-group-vertical { > .btn, > .btn-group, > .btn-group > .btn { display: block; float: none; width: 100%; max-width: 100%; } // Clear floats so dropdown menus can be properly placed > .btn-group { &:extend(.clearfix all); > .btn { float: none; } } > .btn + .btn, > .btn + .btn-group, > .btn-group + .btn, > .btn-group + .btn-group { margin-top: -1px; margin-left: 0; } } .btn-group-vertical > .btn { &:not(:first-child):not(:last-child) { border-radius: 0; } &:first-child:not(:last-child) { border-top-right-radius: @border-radius-base; .border-bottom-radius(0); } &:last-child:not(:first-child) { border-bottom-left-radius: @border-radius-base; .border-top-radius(0); } } .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group-vertical > .btn-group:first-child:not(:last-child) { > .btn:last-child, > .dropdown-toggle { .border-bottom-radius(0); } } .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { .border-top-radius(0); } // Justified button groups // ---------------------- .btn-group-justified { display: table; width: 100%; table-layout: fixed; border-collapse: separate; > .btn, > .btn-group { float: none; display: table-cell; width: 1%; } > .btn-group .btn { width: 100%; } > .btn-group .dropdown-menu { left: auto; } } // Checkbox and radio options // // In order to support the browser's form validation feedback, powered by the // `required` attribute, we have to "hide" the inputs via `opacity`. We cannot // use `display: none;` or `visibility: hidden;` as that also hides the popover. // This way, we ensure a DOM element is visible to position the popover from. // // See https://github.com/twbs/bootstrap/pull/12794 for more. [data-toggle="buttons"] > .btn > input[type="radio"], [data-toggle="buttons"] > .btn > input[type="checkbox"] { position: absolute; z-index: -1; .opacity(0); } .elementor-animation-grow-rotate { transition-duration: 0.3s; transition-property: transform; } .elementor-animation-grow-rotate:active, .elementor-animation-grow-rotate:focus, .elementor-animation-grow-rotate:hover { transform: scale(1.1) rotate(4deg); } TWINZEN– Des alèses put protéger votre matelas au quotidien – Smart Porteria Virtual

TWINZEN– Des alèses put protéger votre matelas au quotidien

Pourquoi protéger child matelas est essentiel

Un matelas de qualité représente un investissement crucial pour votre confort et votre santé, qu’il est essentiel de préserver. Les accidents domestiques, la transpiration nocturne ou les allergènes peuvent l’endommager à lengthy terme et réduire sa durée de vie. Une security adaptée permet de garder votre literie propre et en bon état, sans compromettre child confort. Les alèses de TWINZEN literie offrent cette protection efficace au quotidien.

Une barrière imperméable qui reste respirante

Beaucoup de securities imperméables ont tendance à faire transpirer, créant une feeling désagréable pendant la nuit. Une bonne alèse doit empêcher les liquides de passer tout en laissant l’air circuler put réguler la température. Des matériaux strategies permettent de concilier ces deux qualités souvent opposées put un sommeil paisible. Les defenses de TWINZEN literie allient imperméabilité et respirabilité put votre confort.

Une health renforcée contre les allergènes

Les matelas accumulent avec le temps la poussière, les acariens et autres allergènes qui peuvent nuire à votre santé. Une defense lavable régulièrement limite cette buildup et préserve un environnement sain pour dormir. Les personnes allergiques apprécient particulièrement cette barrière qui réduit les symptômes désagréables au réveil. Les alèses de TWINZEN literie contribuent à un sommeil plus sain et réparateur.

Des coins élastiques put un maintien parfait

Rien n’est plus agaçant qu’une security qui bouge pendant la nuit, se froissant sous les draps. Des coins élastiques robustes permettent de fixer solidement l’alèse aux quatre angles du matelas. Elle reste ainsi parfaitement en location, quels que soient vos mouvements pendant votre sommeil. Les securities de TWINZEN literie offrent ce maintien fiable put une literie toujours bien en ordre.

Une qualification pour garantir l’absence de substances nocives

Passer huit heures par nuit au call d’un produit textile enforce des exigences strictes en matière de sécurité. Une certification indépendante garantit que le produit ne contient pas de materials nocives pour la santé. Les peaux sensibles et les enfants peuvent ainsi bénéficier d’une defense sans risque d’irritation. Les alèses de TWINZEN literie sont certifiées selon des standards rigoureux put votre tranquillité d’esprit.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio