/ot/ CSS

w dziale Strony WWW w Operze
daroc napisał(a):

Wiem, że za pomocą CSS można zmienić zawartość jakiegoś elementu, np. DIVa...
A pytanie jest następujące:
W jaki sposób zmienić - za pomocą CSS - adres obrazka (czyli jak zastąpić atrybut SRC)?

I jeszcze drugie pytanie:
Istnieje w CSS coś takiego jak selektor atrybutu.
Np. mogę zmienić wygląd DIVów, których atrybut title jest równy "abc" lub color - "red". A teraz: jak połączyć te dwa selektory? Tzn. chciałbym zmienić tylko te DIVy, których tytuł to "abc" i jednocześnie kolor to czerwony...

adas napisał(a):

div[title=abc] - taki strzał...

quiris napisał(a):

adas napisał(a)
div[title=abc] - taki strzał...

Jeśli już to:

 div[title="abc"][color="red"] { }
http://www.w3.org/TR/CSS21/selector.html#attribute-selectors

W jaki sposób zmienić - za pomocą CSS - adres obrazka (czyli jak zastąpić atrybut SRC)?

Takich cudów robic się nie da za pomocą CSS. Musisz skorzystać z DOM.

daroc napisał(a):

A czy wtedy będzie to działało na każdej (nawet pseudo-) przeglądarce?

PragmaInline napisał(a):

Originally posted by quiris
Jeśli już to:

 div[title="abc"] { }
http://www.w3.org/TR/CSS21/selector.html#attribute-selectors

Takich cudów robic się nie da za pomocą CSS. Musisz skorzystać z DOM.



Na razie tak. Ale w CSS3 można wykonać taką woltę:
element {
   content: url(image.gif);
}


pi

PragmaInline napisał(a):

Originally posted by daroc
A czy wtedy będzie to działało na każdej (nawet pseudo-) przeglądarce?


Powinno. Spróbuj czegoś takiego:
var el = getElementById("img_to_change") ;
el.src = "new_src" ;

pi

Moose napisał(a):

Originally posted by PragmaInline
Na razie tak. Ale w CSS3 można wykonać taką woltę:

element {
   content: url(image.gif);
}


pi



Tak, tylko, ze Opera nie rozumie niektorych attribute selectors z pewnymi adresami. Jest taki thread gdzie rozmawialem z Jax-em na ten temat. Zeby uzyc CSS3 replacement, musisz sie ograniczyc do danego obrazka, a to wymaga attribute selector z danym href'em. Ewentualnie mozna probowac ALT, ale ten z kolei nie musi byc unique.

To odwieczny problem user CSS, btw.

M.

PragmaInline napisał(a):

Originally posted by Moose
Tak, tylko, ze Opera nie rozumie niektorych attribute selectors z pewnymi adresami. Jest taki thread gdzie rozmawialem z Jax-em na ten temat. Zeby uzyc CSS3 replacement, musisz sie ograniczyc do danego obrazka, a to wymaga attribute selector z danym href'em. Ewentualnie mozna probowac ALT, ale ten z kolei nie musi byc unique.

To odwieczny problem user CSS, btw.

M.



Moose, rozumiem Twój odwieczny problem z selectorami. Ja nie bawię się w kaskady tam gdzie to przyprawia o ból głowy, tylko daję odpowiednie id do konkretnego elementu.
pi

Moose napisał(a):

Originally posted by PragmaInline
Moose, rozumiem Twój odwieczny problem z selectorami. Ja nie bawię się w kaskady tam gdzie to przyprawia o ból głowy, tylko daję odpowiednie id do konkretnego elementu.
pi



Jak piszesz user CSS do czyjejs strony, to nie masz takiej mozliwosci :]

M.