Wie werde ich ungewollte Abstände durch <form> los?
Andreas Korthaus
- html
Hallo!
Ich habe schon öfter das Problem gehabt, dass ich durch <form> ungewollte Abstände in die Seite bekomme. Meist ist das egal, aber manchmal eben nicht, bisher habe ich das einfach so gelöst indem ich Form zwischen <table><form><tr> gepackt habe, nur ist offensichtlich das das ungültiges HTML ist. Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
Grüße
Andreas
Ich habe schon öfter das Problem gehabt, dass ich durch <form> ungewollte Abstände in die Seite bekomme. Meist ist das egal, aber manchmal eben nicht, bisher habe ich das einfach so gelöst indem ich Form zwischen <table><form><tr> gepackt habe, nur ist offensichtlich das das ungültiges HTML ist. Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
Deklariere in deinem Stylesheet:
form {
margin: 0;
}
MI
Hallo Andreas,
bisher habe ich das einfach so gelöst indem ich Form zwischen <table><form><tr> gepackt habe, nur ist offensichtlich das das ungültiges HTML ist.
in der Tat :-) zwischen <table> und <tr> darf nichts anderes stehen.
Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
versuchs mal mit style="display:inline;" im <form>-Tag
Grüße aus Nürnberg
Tobias
Hi,
bisher habe ich das einfach so gelöst indem ich Form zwischen <table><form><tr> gepackt habe, nur ist offensichtlich das das ungültiges HTML ist.
in der Tat :-) zwischen <table> und <tr> darf nichts anderes stehen.
oh doch, da darf anderes stehen. thead, tfoot, tbody, caption, col und colgroup.
Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
versuchs mal mit style="display:inline;" im <form>-Tag
es reicht, margin auf 0 zu setzen.
cu,
Andreas
bisher habe ich das einfach so gelöst indem ich Form zwischen <table><form><tr> gepackt habe, nur ist offensichtlich das das ungültiges HTML ist.
in der Tat :-) zwischen <table> und <tr> darf nichts anderes stehen.
Das ist Unsinn, siehe http://jendryschik.de/wsdev/einfuehrung/xhtml/tabellen.html
MI
hio,
Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
versuchs mal mit style="display:inline;" im <form>-Tag
ob die Idee so gut ist? Somit ist form ein inline-Element, welches dann eigentlich keine block-Element beinhalten dürfte, oder?
Gibt es keine bessere Möglichkeit diese Abstände loszuwerden?
versuchs mal mit style="display:inline;" im <form>-Tagob die Idee so gut ist? Somit ist form ein inline-Element, welches dann eigentlich keine block-Element beinhalten dürfte, oder?
Du verwechselst das Dokument an sich und dessen Darstellung. 'form' bleibt ein Block-Element und darf dementsprechend andere Block-Elemente beinhalten, ganz egal, welcher Wert der Eigenschaft 'display' zugeordnet wird. Per CSS bestimmst du nur die Art der Darstellungsbox.
MI
hio,
Du verwechselst das Dokument an sich und dessen Darstellung. 'form' bleibt ein Block-Element und darf dementsprechend andere Block-Elemente beinhalten, ganz egal, welcher Wert der Eigenschaft 'display' zugeordnet wird. Per CSS bestimmst du nur die Art der Darstellungsbox.
Scheine da wirklich was verwechselt zu haben, ob ich zugeben muss das ganze sich mir "logisch" nicht so ganz erschliesst ;)
Klar, nach HTML ist das ganze immer noch ein block, ist ja so definiert worden. Jedoch ändere ich die Darstellungsform ja auf inline.
Was ich nicht ganz verstehe dabei, wie kann ein Element das inline dargestellt ist (also, so wie ich es verstehe, sich in den Textfluss einbettet) ein Element beinhalten das als block dargestellt wird, somit hätte ich doch mein inline-Element zu einem block "erweitert". Oder nicht?
Heisst das, es ist grundsätzlich erlaubt Element per CSS mit display:inline zu formatieren die block-Element enthalten dürfen, sofern es die DTD zulässt?
Ein "Ausflug" auf w3.org, hat nicht viel gebracht ;) Die schweigen sich da etwas tod drüber
gl & hf
Thorsten
Klar, nach HTML ist das ganze immer noch ein block, ist ja so definiert worden. Jedoch ändere ich die Darstellungsform ja auf inline.
Was ich nicht ganz verstehe dabei, wie kann ein Element das inline dargestellt ist (also, so wie ich es verstehe, sich in den Textfluss einbettet) ein Element beinhalten das als block dargestellt wird, somit hätte ich doch mein inline-Element zu einem block "erweitert". Oder nicht?
Nicht in HTML. Was du in CSS deklarierst, hat keinen Einfluss auf den HTML Document Tree.
Heisst das, es ist grundsätzlich erlaubt Element per CSS mit display:inline zu formatieren die block-Element enthalten dürfen, sofern es die DTD zulässt?
Richtig. Du kannst einfach ein Dokument erstellen und es unter http://validator.w3.org validieren, dann siehst du es.
MI
Hallo!
Danke Euch allen, dann weiß ich ja jetzt Bescheid, habe dann also mehrere Möglichkeiten.
Grüße
Andreas
Danke Euch allen, dann weiß ich ja jetzt Bescheid, habe dann also mehrere Möglichkeiten.
Eigentlich nur eine. Du willst den Abstand eines Elementes zu dessen umgebenden Elementen beeinflussen. Genau das erfüllt die Eigenschaft 'margin', siehe dazu auch http://jendryschik.de/wsdev/einfuehrung/css/box-modell.html. Alles andere sind nur Workarounds.
MI