Immer wenn ich etwas so vertikal und/oder horizontal positionieren muss, würde ich normalerweise auf flexbox zurückgreifen, und wenn das nicht die Lösung ist position: absolute
mit top:50%;
und/oder left:50%;
mit transform: translate(-50%,-50%);
. Ich habe das mit folgendem Code versucht, aber solche Ergebnisse habe ich nicht bekommen.Kann nicht zentriert werden: nach und: vor horizontal und vertikal
HTML
.plus-minus-toggle {
cursor: pointer;
height: 50px;
position: relative;
width: 50px;
background: red;
&:before,
&:after{
background: white;
content: '';
height: 5px;
left: 50%;
position: absolute;
top: 50%;
width: 21px;
transform: translate(-50%,-50%);
transition: transform 500ms ease;
}
&:after {
transform-origin: center;
}
&.collapsed {
&:after {
transform: rotate(90deg);
}
&:before {
transform: rotate(180deg);
}
}
}
<div class="plus-minus-toggle collapsed"></div>
Ich bin nicht sicher, wie dies zu erreichen, habe ich versucht, auch die div
in einem übergeordneten div
Einwickeln und die Positionierung css dort Anwendung, aber kein Glück, Es war dasselbe.
es Schlag mich. Das ist richtig. – offbyone
ugh, Amateurfehler, kann nicht glauben, dass ich das nicht gesehen habe ... –
Ich habe deine Antwort aktualisiert. Ich bemerkte, als ich auf das Symbol geklickt hatte, war es nicht zentriert, also für '.plus-minus-toggle: vorher, .plus-minus-toggle: nachher 'Ich habe' transform: translate (-50%, - 50%) hinzugefügt ; '. –