Wie kann ich eine ungeordnete Liste von <li>
in einer festen Breite zentrieren div
?
<table width="100%">
<tbody>
<tr>
<td width="41%"><img src="/web/20100104192317im_/http://www.studioteknik.com/html2/html/images/hors-service.jpg" width="400" height="424"></td>
<td width="59%"><p align="left"> </p>
<h1 align="left">StudioTeknik.com</h1>
<p><br align="left">
<strong>Marc-André Ménard</strong></p>
<ul>
<li>Photographie digitale</li>
<li>Infographie </li>
<li>Débug et IT (MAC et PC)</li>
<li> Retouche </li>
<li>Site internet</li>
<li>Graphisme</li>
</ul>
<p align="left"><span class="style1"><strong>Cellulaire en suisse : </strong></span><a href="#">+41 079 573 48 99</a></p>
<p align="left"><strong class="style1">Skype : </strong> <a href="#">menardmam</a></p>
<p align="left"><strong class="style1">Courriel :</strong><a href="https://web.archive.org/web/20100104192317/mailto:[email protected]"> [email protected]</a></p></td>
</tr>
</tbody>
</table>
css
html
html-lists
Menardmam
quelle
quelle
Verwenden Sie display: inline-block, um die ul zu zentrieren und auch die li-Elemente darin zu zentrieren und die Breite der ul dynamisch zu ändern. und wickeln Sie es in eine zentrierte div.
Aktualisieren
Hier ist ein jsFiddle-Link zum obigen Code.
quelle
float: none;
um dieul
.Ich liebe Flexbox:
quelle
Schritte :
style="text-align:center;"
an die Elterndiv
vonul
style="display:inline-table;"
anul
style="display:inline;"
anli
oder verwenden
quelle
Dies ist eine bessere Möglichkeit, ULs in jedem DIV-Container zu zentrieren.
Diese CSS-Lösung verwendet keine Width- und Float-Eigenschaften. Float: Links und Breite: 70% verursachen Kopfschmerzen, wenn Sie Ihr Menü auf verschiedenen Seiten mit verschiedenen Menüelementen duplizieren müssen.
Anstatt Breite zu verwenden, verwenden wir Polsterung und Rand, um den Abstand um den Text- / Menüpunkt zu bestimmen. Verwenden Sie statt Float: Left im LI-Element auch display: inline-block.
Indem Sie Ihren LI nach links schweben lassen, schweben Sie Ihren Inhalt buchstäblich nach links und müssen dann einen der oben genannten Hacks verwenden, um Ihren UL zu zentrieren. Anzeige: Inline-Block erstellt Ihre Float-Eigenschaft für Sie (Art). Es nimmt Ihr LI-Element und verwandelt es in ein Blockelement, das nebeneinander liegt (nicht schwebend).
Beim Responsive Design und bei der Verwendung von Frameworks wie Bootstrap oder Foundation treten Probleme beim Verschieben und Zentrieren von Inhalten auf. Sie haben einige eingebaute Klassen, aber es ist immer besser, es von Grund auf neu zu machen. Diese Lösung eignet sich viel besser für dynamische Menüs (z. B. das Adobe Business Catalyst-Menüsystem).
Eine Referenz für dieses Tutorial finden Sie unter: http://html-tuts.com/center-div-image-table-ul-inside-div/
HTML
CSS
quelle
Könnte entweder sein
oder
hängt davon ab, wie es aussehen soll (oder diese kombinieren)
quelle
<li>
nicht gestylt sind, sieht es genauso aus.Um ein Blockobjekt (z. B. das
ul
) zu zentrieren, müssen Sie eine Breite festlegen. Anschließend können Sie den linken und rechten Rand dieser Objekte auf automatisch setzen.Um den Inline-Inhalt des Blockobjekts (z. B. den Inline-Inhalt von
li
) zu zentrieren, können Sie die CSS-Eigenschaft festlegentext-align: center;
.quelle
Versuchen
quelle
Fügen
text-align: center;
Sie einfach zu Ihrem hinzu<ul>
. Problem gelöst.quelle
Interessant, aber versuchen Sie dies mit schwebenden li-Elementen innerhalb der ul: Beispiel hier
Das Problem jetzt: Die Ul braucht eine feste Breite, um tatsächlich in der Mitte zu sitzen. Wie auch immer wir es relativ zur Containerbreite (oder dynamisch) sein wollen, Rand: 0 Auto auf der ul funktioniert nicht.
Gehen von UL / Li Liste Ein besserer Weg ist zu lassen und einen anderen Ansatz verwenden Beispiel hier
quelle
Wenn Sie die Breite des kennen
ul
, können Sie einfach den Rand desul
bis einstellen0 auto;
Dadurch wird das
ul
in der Mitte des enthaltenen Div ausgerichtetBeispiel:
HTML:
CSS:
quelle
Hier ist die Lösung, die ich finden konnte:
quelle
Eine weitere Option ist:
HTML
CSS:
quelle
Ich habe nach dem gleichen Fall gesucht und alle Antworten durch Ändern der Breite von versucht
<li>
.Leider gelang es nicht allen, links und rechts von der
<ul>
Box den gleichen Abstand zu erreichen .Die engste Übereinstimmung ist diese Antwort, aber sie muss die Änderung der Breite mit der Polsterung anpassen
Siehe das Ergebnis unten, alle Abstände zwischen
<li>
auch zur<ul>
Box sind gleich.Sie können es auf dieser jsFiddle überprüfen:
http://jsfiddle.net/qwbexxog/14/
quelle
quelle
benutze oldschool center-tags
:-)
quelle
center