Die Zelle enthält nur ein Kontrollkästchen. Es ist aufgrund des Textes in der Tabellenkopfzeile ziemlich breit. Wie zentriere ich das Kontrollkästchen (mit Inline-CSS in meinem HTML? (Ich weiß))
Ich habe es versucht
<td>
<input type="checkbox" name="myTextEditBox" value="checked"
style="margin-left:auto; margin-right:auto;">
</td>
aber das hat nicht funktioniert. Was mache ich falsch?
Update: Hier ist eine Testseite. Kann jemand es bitte korrigieren - mit CSS inline im HTML - damit die Kontrollkästchen in ihren Spalten zentriert sind?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Alignment test</title>
</head>
<body>
<table style="empty-cells:hide; margin-left:auto; margin-right:auto;" border="1" cellpadding="1" cellspacing="1">
<tr>
<th>Search?</th><th>Field</th><th colspan="2">Search criteria</th><th>Include in report?<br></th>
</tr>
<tr>
<td>
<input type="checkbox" name="query_myTextEditBox" style="text-align:center; vertical-align: middle;">
</td>
<td>
myTextEditBox
</td>
<td>
<select size ="1" name="myTextEditBox_compare_operator">
<option value="=">equals</option>
<option value="<>">does not equal</option>
</select>
</td>
<td>
<input type="text" name="myTextEditBox_compare_value">
</td>
<td>
<input type="checkbox" name="report_myTextEditBox" value="checked" style="text-align:center; vertical-align: middle;">
</td>
</tr>
</table>
</body>
</html>
Ich habe die Antwort von @ Hristo akzeptiert - und hier ist es mit Inline-Formatierung ...
<table style="empty-cells:hide;" border="1" cellpadding="1" cellspacing="1">
<tr>
<th>Search?</th><th>Field</th><th colspan="2">Search criteria</th><th>Include in report?<br></th>
</tr>
<tr>
<td style="text-align: center; vertical-align: middle;">
<input type="checkbox" name="query_myTextEditBox">
</td>
<td>
myTextEditBox
</td>
<td>
<select size ="1" name="myTextEditBox_compare_operator">
<option value="=">equals</option>
<option value="<>">does not equal</option>
</select>
</td>
<td>
<input type="text" name="myTextEditBox_compare_value">
</td>
<td style="text-align: center; vertical-align: middle;">
<input type="checkbox" name="report_myTextEditBox" value="checked">
</td>
</tr>
</table>
Antworten:
AKTUALISIEREN
Wie wäre es damit ... http://jsfiddle.net/gSaPb/
Schauen Sie sich mein Beispiel auf jsFiddle an: http://jsfiddle.net/QzPGu/
HTML
CSS
Ich hoffe das hilft.
quelle
Versuchen
quelle
Versuchen Sie dies, dies sollte funktionieren,
quelle
Das sollte funktionieren, ich benutze es:
quelle
Für dynamisches Schreiben td Elemente und nicht direkt auf den td Style verlassen
quelle
Ziehen Sie das gesamte Inline-CSS heraus und verschieben Sie es auf den Kopf. Dann verwenden Klassen auf den Zellen , so dass Sie alles einstellen können , wie Sie möchten (keinen Namen wie „center“ verwenden - Sie können es ändern , von jetzt 6 Monate links nach ...). Die Antwort auf die Ausrichtung ist immer noch dieselbe - wenden Sie sie auf
<td>
das Kontrollkästchen NICHT das Kontrollkästchen an (das würde nur Ihren Scheck zentrieren :-))Verwenden Sie Ihren Code ...
quelle
td
ist ein "besonderes" Element. Es hat seine eigenen einzigartigen Verhaltensweisen - wie eine Block- und Inline-Ehe (aus der Hölle).Wenn Sie keine älteren Browser unterstützen, würde ich diese verwenden,
flexbox
da sie gut unterstützt werden und einfach die meisten Ihrer Layoutprobleme lösen.Dadurch werden alle Inhalte in der ersten
<td>
Zeile jeder Zeile zentriert .quelle
Definieren Sie die Eigenschaft float des Prüfelements auf none:
Und zentrieren Sie das übergeordnete Element:
Es war das einzige, was für mich funktioniert.
quelle
quelle
Stellen Sie sicher, dass dies nicht der Fall
<td>
istdisplay: block;
Floating wird dies tun, aber viel einfacher zu tun:
display: inline;
quelle