Autor | Zpráva | ||
---|---|---|---|
karel novotný Profil * |
#1 · Zasláno: 3. 1. 2012, 22:39:08
Ahoj, mám obrázek, třeba
a potřeboval bych, aby se mi po najetí myši zobrazil přes něj další obrázek. Asi takle vím že by to šlo řešit nějaký absolutně napozicovaným skrytým prvkem, ale zajímá mě, jestli na to nění nějaká vychytávka nebo jestli už to někdo neřešil a nemá nějaký elegantní řešení. děkuju za rady. |
||
Petr ZZZ Profil |
#2 · Zasláno: 3. 1. 2012, 22:52:55 · Upravil/a: Petr ZZZ
Můžeš spojit dva obrázky do jednoho (natvrdo, v nějakém grafickém editoru), výsledný obrázek dát na pozadí a pomocí CSS ho na hover přesouvat. Podívej se třeba na menu 2 na Bubákově stránce. (Tady v diskusi jsi např. toto řešení nenašel? Stejný dotaz je tu tak jednou týdně.)
|
||
karel novotný Profil * |
#3 · Zasláno: 3. 1. 2012, 23:02:19
jasně to já chápu, ale není to pro mě elegantní řešení. těch podkladovech obrázků jsou mraky a spustu znich přidávám přímo z internetu bez toho, abych je měl na disku. navíc bych je musel editovat manuálně.
|
||
panther Profil |
#4 · Zasláno: 3. 1. 2012, 23:09:03
karel novotný:
obrázek, který se má zobrazovat nahoře, bude vždy stejný? Pak není co řešit a při :hover u měň jeho visibility, resp. display.
|
||
karel novotný Profil * |
#5 · Zasláno: 3. 1. 2012, 23:13:32
ano, to je jedna možnost, taky ji zmiňuji v prvním příspěvku. ale zajímá mě, jestli neexistuje nějaké jiné, elegantnější řešení..
|
||
panther Profil |
#6 · Zasláno: 3. 1. 2012, 23:16:04
karel novotný:
„jestli neexistuje nějaké jiné, elegantnější řešení..“ nemyslím si, tohle mi přijde elegantní až až :-) |
||
karel novotný Profil * |
#7 · Zasláno: 4. 1. 2012, 00:06:17
když říkám elegatní, tak myslím pouze přes css. tak abych nemusel zasahovat do html
|
||
Petr ZZZ Profil |
#8 · Zasláno: 4. 1. 2012, 00:29:10 · Upravil/a: Petr ZZZ
Reaguji na karla novotného:
CSS je už z principu soubor prezentačních předpisů, zatímco jazykem HTML kóduješ vlastní obsah. Máš-li jednou takové, podruhé makové a potřetí zase jiné páry obrázků, jedná se o změny obsahu, což spadá pod HTML. Mohl bys sice měnit v CSS cesty a názvy obrázků, na které se pořád stejné HTML odvolává, ovšem dostávat – předpokládám na stejné adrese a na stejná klíčová slova – co chvíli něco jiného, to bych asi nebyl nadšený ani jako uživatel, ani jako vyhledávač. Snad ještě k tomu mnou odkázanému příkladu – jednoduchou úpravou to můžeš dělat i s dvěma samostatnými obrázky. Vtip odkázaného řešení je ten, že se načítá jen jeden obrázek. Se dvěma obrázky se může stát, že se druhý nenačte nebo se načte trochu později a pak to nevypadá hezky. „přidávám přímo z internetu bez toho, abych je měl na disku“ Jen se zeptám – autorská práva máš ošetřena? |
||
Chamurappi Profil |
#9 · Zasláno: 4. 1. 2012, 01:03:23
Reaguji na karla novotného:
„tak abych nemusel zasahovat do html“ To jsou vstupní podmínky spíš pro extrémní řešení, než pro elegantní. Jak přesně vypadá to HTML, do něhož nechceš zasahovat? Je obrázek obalen do něčeho, s čím si lze hrát? |
||
karel novotný Profil * |
#10 · Zasláno: 4. 1. 2012, 01:04:17
Petr ZZZ:
CSS je už z principu soubor prezentačních předpisů ano vím, ale css má třeba atribut backround: , proto se ptám, myslel jsem, jestli neexistuje něco jako foreground: , nebo něco na ten způsob.
|
||
Petr ZZZ Profil |
#11 · Zasláno: 4. 1. 2012, 02:00:06 · Upravil/a: Petr ZZZ
Existuje pseudotřída
:hover . (Mou otázku ohledně autorských práv jsi asi přehlédl, že?)
|
||
karel novotný Profil * |
#12 · Zasláno: 4. 1. 2012, 03:06:26
ano, existuje. ale těžko s ní přidám do popředí obrázek, nebo se pletu? prává mám ošetřený, nemusíš mít strach ;-)
|
||
dranel91 Profil |
#13 · Zasláno: 4. 1. 2012, 08:39:06
karel novotný:
Shrnu to. CSS nemá žádnou vlastnost foreground, protože co je vpředu, to je důležité a důležitý je obsah a ten je psán v HTML. CSS pouze řídí jeho formu. Pokud to jsou tedy stěžejní obrázky, mající nějakou informační hodnotu, pak je vhodné použít tag <img> a obrázky měnit např. pomocí výše zmíněné vlastnosti visibility resp. display a preudotřídy :hover. Pokud nemají žádnou informační hodnotu a jsou to pouhá pozadí, pak je to práce CSS, které si s tím poradí díky své vlastnosti background. |
||
Trejpa Profil |
#14 · Zasláno: 4. 1. 2012, 09:04:29
karel novotný:
Mají-li být na stránce dva nezávislé obrázky nad sebou, bude muset být každý v jiném HTML elementu. Buď jeden jako běžný obrázek a druhý napozicovaný nad ním nebo oba jako pozadí ve dvou vnořených blocích (příklad). Bez úpravy HTML kódu s tím nehneš. |
||
Časová prodleva: 12 let
|
0