position absolute in einer Tabelle
Hubs
- css
Nachdem ich es in anderen Foren vergeblich versucht habe, fand dich den Hinweis auf die professionelle Beantwortung von Fragen, die hier stattfinden soll.
Ich habe eine *.psd - Grafik, die gesliced ist erstmalig als Seitenkopf benutzt und habe, um den Text flexibel gestalten zu können, den Teil der Seite unter der Grafik in HTML fortgesetzt. (Hintergrundstreifen in y-Achse verlängert)
Dazu benötigte ich mehrere Kopfgrafiken. Bei der englischen gibt es keine Probleme. Die deutsche Variante wird langsam zu einem großen Problem. Auf dieser habe ich zwischen den Tabellen einen pixelgroßen Streifen des 1. Hintergrundes. (Das Ganze ist table in table)
Den wollte ich nun mit einem Grafikstreifen abdecken. Das ist zwar bissel Pfuscherei, müsste aber gehen. Dieser richtet sich aber bei position absolute nach dem Browserfenster. Die theoretische Lösung kenne ich. Ein Rootelement definieren und dann den "Abdeckstreifen" danach positionieren. Allein, wie das zu realisieren ist - keine Ahnung.
Wer selbst schauen will - hier ist der Spalt:
http://www.drechselhuber.de/HPAdolf Huber/biografie.htm
Hier ist es in Ordnung:
http://www.drechselhuber.de/HPAdolf Huber/home2.htm
Hi
Ich vermute den Spalt bekommst du auch Weg, wenn du alle Whitespaces (z.B. Zeilenumbrüche, Leerzeichen) entfernst.
Häufig hilft es schon, die Umbrüche in ein Element zu packen und erst hinter. Wie z.B. in dieser Zeile:
<TD>
<A HREF="werkverzeichnis.htm"
ONMOUSEOVER="changeImages('Huber_01', 'Bilder/Huber_01-Huber_Werkverzeich.gif', 'Huber_Werkverzeichnis', 'Bilder/Huber_Werkverzeichnis-over.gif'); return true;"
ONMOUSEOUT="changeImages('Huber_01', 'Bilder/Huber_01.gif', 'Huber_Werkverzeichnis', 'Bilder/Huber_Werkverzeichnis.gif'); return true;">
<IMG NAME="Huber_Werkverzeichnis" SRC="Bilder/Huber_Werkverzeichnis.gif" WIDTH=93 HEIGHT=20 BORDER=0></A></TD>
Optimieren ließe sich das ganz z.B. noch durch
true;"><IMG NAME="Huber_Werkverzeichnis"
SRC="Bilder/Huber_Werkverzeichnis.gif" WIDTH=93 HEIGHT=20 BORDER=0></A></TD>
so long
Ole
(8-)>
Dank dir. Das ist aber ausgerechnet der Quelltext der gesliceten Grafik. Da wage ich mich nicht ran. Hab gerade in mühseliger Kleinarbeit alles neu gebaut, weil die Grafik plötzlich kurz und klein war.
Durch den Umbau ist der Spalt jetzt wie ursprünglich unter
http://www.drechselhuber.de/HPAdolf Huber/home.htm
zu sehen.
Es ist wie gesagt, kein Problem einen Streifen darüber zu legen, aber die postion absolute erfüllt in dem Fall nur ihren Sinn bei Auflösung 1024x768 und großem Fenster. Und das ist natürlich Quark. Ich brauch also eine absolute Position der Grafik, orientiert an der inneren Tabelle, die ja auch in der Größe festgeschrieben ist. So, wie ich es verstanden habe, muss ich also die innere Tabelle als Rootelement festlegen gegenüber der Grafik (Hintergrundstreifen). Das wärs eigentlich schon... Aber wie? Übersteigt meine Kenntnisse. Googeln hat auch nix geholfen.
Hallo,
Warum willst du den Fehler vertuschen anstatt ihn auszumerzen?
Du könntest auch erstmal alle Tabellenzellen samt Inhalt in eine Reihe stellen.
<td><a href="einLink"><img src="einBild"></a></td>
Damit wäre es auch schon möglich unnötige Whitespaces bzw. Umbrüche aus dem Quelltext zu entfernen.
Mach bevor du an deiner Datei arbeitet doch einfach eine Sicherheitskopie, so kannst du diese, sollte etwas nicht mehr funktionieren, zurückspielen.
Btw. die absolute Positionierung eines Elementes richtet sich nach der Positionierung des ersten positionierten Elternelementes. Ist kein Elternelement Positioniert, wird die Position 0:0 des sichtbaren Bereiches genommen.
Eine relative Positionierung richtet sich nach dem Ursprung des Elementes im Dukumentenfluß. Sprich: Nach der Stelle wo es normalerweise stehen würde.
so long
Ole
(8-)>
Hast schon Recht. Die saubere Variante, sprich eine akkurat geslicete Grafik ohne Fehler wäre mir lieber. Wenn ich border="1" setze sehe ich den Fehler ja. Aber nur optisch. Ich vermute, dass der Fehler in der Grafik selbst liegt. Der Quelltext der englischen Grafik sieht ganz anders aus, obwohl ich nur die Schriften geändert habe.
Nun habe ich aber das Bild 3x neu gebaut, die englische Variante als Original genommen und umgebaut und es hat nix geholfen...
Ich werde einmal deinen Rat befolgen und die vielen Umbrüche wegschnipseln. Mal schauen, was es bringt.
Das, was du mir erklärt hast mit dem Elterelement usw. habe ich mir schon angelesen. Hab es schon versucht, indem ich die Grafiktabelle mit position relative definiert habe, da sie ja nicht absolut festsitzen darf. Hat aber keinen Effekt gehabt, außer Hackschnitzelei.
Scheint über meinen Horizont zu gehen... :o(
Ich geb es nicht auf. Komischerweise scheint es für meine Frage keine Antwort zu geben. Also noch einmal ganz einfach ohne Schnickschnack.
Ich habe eine Seite "table in table" gebaut. Äußere beinhaltet den veränderbaren Hintergrund, innere den statischen mit Inhalt.
Es soll eine Grafik absolut positioniert werden, jedoch nicht ausrichtet am Browserfenster (das ist kein Problem), sondern an der inneren Tabelle. Dazu muß ein Elternelement (die Tabelle) definiert werden, nach dem sich die Grafik dann ausrichtet. Dazu finde ich überall nur diese Anweisung, aber kein Beispiel. Wie tu ich das.
Hat jemand ein Beispiel, wie das funktioniert? Bin ich vielleicht gar in CSS falsch und das Ganze geht schlicht im HTML?
Hallo Hubs,
Es soll eine Grafik absolut positioniert werden, jedoch nicht ausrichtet am Browserfenster (das ist kein Problem), sondern an der inneren Tabelle.
Dann muss diese innere Tabelle anders als „static“ positioniert sein.
<table style="[code lang=css][ref:self811;css/eigenschaften/positionierung.htm#position@title=position:relative]
"> [/code]sollte helfen.
Grüße
Roland
Dann muss diese innere Tabelle anders als „static“ positioniert sein.
<table style="[code lang=css][ref:self811;css/eigenschaften/positionierung.htm#position@title=position:relative]
"> [/code]sollte helfen.Grüße
Roland
Danke. Hatte ich schon probiert, aber vielleicht ist mir da ein Fehler unterlaufen...
Ich versuche es noch einmal.