css und transparent ?

Status
Nicht offen für weitere Antworten.
@maik:
Danke dir, aber die Idee ist mir auch schon gekommen. Leider ist mein Problem nur noch etwas komplizierter als ich vorhin beschrieben habe. Da auf der Seite zum Teil längere Texte aus der Datenbank kommen, haben die DIVs bei mir keine feste Höhe. Wenn ich jetzt möchte, dass das hintere sich der Größe des vorderen anpasst, dann muss ich das so schreiben:
HTML:
<div class="opacity">
           <div class="no_opacity">
           <p>Tabellenzelle 2 mit Hintergrundfarbe und Opacity=50</p>
           </div></div>

So passt sich dann der hintere dem vorderen an.
Soweit sogut, das Problem sind bei dem Ansatz jetzt aber die Kaskaden! Die Transparenz wird dem vorderen weitervererbt. Ich habe bis jetzt noch keine Möglichkeit gefunden diese Vererbung zu verhindern.

Von euch kennt nicht zufällig jemand eine Lösung?

Gruß Michael
 
Mit verschachtelten DIVs funktioniert die Technik nicht.

Wieso gibst du den DIVs nicht eine feste Höhe und bestimmst für das obere DIV overflow: auto, um längeren Inhalt zu scrollen?

CSS-Code:
Code:
div.opacity
{
filter: alpha(opacity=50);
-moz-opacity: 0.5;
z-index: 1;
width: 100%;
height: 100px;
background-color: #003080;
}

div.no_opacity
{
position: relative;
margin-top: -100px;
z-index: 2;
width: 100%;
height: 100px;
overflow: auto;
overflow-x: hidden;
}
 
Ich bin gerade durch das Forum gestolpert und dachte, ich könnte meine recht simple Lösung präsentieren, wie man problemlos den Hintergrund einer Tabelle (oder irgend eines anderen rechteckigen Formatierungselements) unsichtbar machen kann:

Baut einfach folgendes Konstrukt ein:
style='background:url()',

Dadurch, dass explizit KEIN Hintergrundbild angegeben wurde, wird der Hintergrund durchsichtig. Will man das für alle Tabellenzellen machen, dann notiert man im Kopf der HTML-Datei innerhalb eines style-Bereichs einfach folgendes:

td {
background:url()
}

Ich habe allerdings noch nicht ausporbiert, ob das wirklich mit jedem Browser klappt. Vielleicht könnt ihr das mal ausprobieren und dann eure Erfahrungen hier posten? Es sollte auf jeden Fall besser sein als einer dieser dubiosen IE-Effekte :)

Gruß,
Tobias
 
einzeller hat gesagt.:
Ich bin gerade durch das Forum gestolpert und dachte, ich könnte meine recht simple Lösung präsentieren, wie man problemlos den Hintergrund einer Tabelle (oder irgend eines anderen rechteckigen Formatierungselements) unsichtbar machen kann:

Baut einfach folgendes Konstrukt ein:
style='background:url()',

Dadurch, dass explizit KEIN Hintergrundbild angegeben wurde, wird der Hintergrund durchsichtig. Will man das für alle Tabellenzellen machen, dann notiert man im Kopf der HTML-Datei innerhalb eines style-Bereichs einfach folgendes:

td {
background:url()
}

Ich habe allerdings noch nicht ausporbiert, ob das wirklich mit jedem Browser klappt. Vielleicht könnt ihr das mal ausprobieren und dann eure Erfahrungen hier posten? Es sollte auf jeden Fall besser sein als einer dieser dubiosen IE-Effekte :)

Gruß,
Tobias
Eine Tabellenzelle hat von Natur aus schon keinen Hintergrund.

mfg
 
Doch! Sie nimmt i.A. die Hintergrundfarbe des Elternelements an.

Lege ich also eine Tabelle über eine weiße Fläche, dann ist ihr Hintergrund auch weiß, und nicht transparent. Das ist gerade dann störend, wenn sich im Hintergrund ein Hintergundbild befindet, das von der vordergründigen Tabelle in Form einer weißen rechteckigen Fläche verdeckt wird.

Ein Neutralisieren der Weiß-Vorgabe der Tabelle mit Hilfe meiner vor zwei Posts vorgestellten Methode sollte Abhilfe schaffen können.
 
HTML:
<table border="1" cellspacing="5" cellpadding="5"> ... </table>
@einzeller: Diese Tabelle hat keine Hintergrundfarbe bgcolor="#ffffff" und verdeckt somit definitiv nicht die Hintergrundgrafik einer Seite mit einer weissen rechteckigen Fläche ;-]

Btw, in welchem Browser hast du denn so eine Voreinstellung mit weissem Hintergrund für Tabellen :suspekt:
 
Ok, ich sehe gerade, dass das Unfug war. Ich hatte Formulare in meiner Tabelle, die jeweils eine ganze Tabellenzelle ausgefüllt hatten. Und das Formular erzeugt diese weißen Flächen (also die Fläche zwische <form>...</form>). Da die Formulare die gleiche Größe wie die Tabellenzellen hatten habe ich nicht weiter nachgedacht.

Aber mit dem CSS-Befehl kann man den Formular-Effekt trotzdem umgehen ;-)
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück