Ich möchte ein horizontales Menü mit gedrehten Text erstellen (sagen wir -50deg). Mein Code sieht wie folgt:gleichmäßig gedrehten Text verteilen
.menuItem {
text-align: right;
margin-top: 3vh;
list-style-type: none;
display:inline-block;
}
.menuButton{
text-align: right;
background:none;
padding: 0;
border:none;
-webkit-transform: rotate(310deg);
-moz-transform: rotate(310deg);
-ms-transform: rotate(310deg);
-o-transform: rotate(310deg);
transform: rotate(310deg);
-webkit-transform-origin:100%;
-moz-transform-origin:100%;
-ms-transform-origin:100%;
-o-transform-origin:100%;
transform-origin:100% ;
}
<ul class="menu">
<li class="menuItem">
<button class="menuButton" id="newsButton">Button</button>
</li>
<li class="menuItem">
<button class="menuButton" id="aboutButton">LoooooooongButton</button>
</li>
<li class="menuItem">
<button class="menuButton" id="contactsButton">ShortButton</button>
</li>
<li class="menuItem">
<button class="menuButton" id="otherStuffButton">LoooooooooooooongestButton</button>
</li>
</ul>
ich bereits geschafft haben, jede Taste zu drehen, nach rechts auszurichten, den Text, und sie horizontal gelegt, das einzige Problem, das ich Gesicht ist, dass Ich kann es nicht schaffen, den Text gleichmäßig zu verteilen, da die Schaltflächen mit längerem Text von ihren linken Geschwistern weiter entfernt sind als die mit einem kurzen Text. Was ist die beste Lösung für dieses Problem? Danke euch allen.
UPDATE
Ich habe ein einfaches Skript durch Javascript nur geschrieben, die die Behälterbreite und gleichmäßig verteilt die Tasten bekommt: hier
var menuWidth = $('.menu').width();
var elements = document.querySelectorAll(".menuItem");
for (var element of elements){
let ind = $(element).index();
$(element).css("left", $(element).height()-$(element).width()+(menuWidth/(elements.length))*ind);
}
Offensichtlich Der Trick ist, Position: absolut allen Menüpunkten und Position zuweisen: relativ zum Menü. Vielen Dank alle, Jungs;)
Werden sie dynamisch erstellt? Wenn dies nicht erforderlich ist, können Sie die IDs problemlos zur Anpassung verwenden. Sonst ist es viel schwieriger. –
nein sind sie nicht, würden Sie vorschlagen, die Position: absolut allen Menüelementen zuzuweisen und ihnen dann manuell ihre linke Position zu geben? –
In diesem Fall ja. Ich würde auf jeden Fall empfehlen, nur so etwas zu tun, da es eine Menge Kopfschmerzen speichern wird. –