Autor Zpráva
David1256
Profil
Dobrý den,

mám div, který má nastaveno background-repat:repeat-y a zároveň background-position: 0px 10px. Chci, aby se pozadí nevykreslovalo v těch horních 10-ti pixelech divu, jenomže mám nastaveno zároveň background-repeat:repeat-y, což mi pozadí vypisuje v celé výšce, protože repeatu je jedno, kde začíná pozadí, tak jako tak se opakuje dokola. Máte někdo nápad, jak toto řešit bez přidávání dalších divů?

Děkuji.
han5vk
Profil
Aký vysoký je ten div? Najjednoduchšie by asi bolo len ten obrázok zopakovať v editore a uložiť ako vyšší. Potom nastaviť background-repeat: no-repeat. Ale ak je div oveľa vyšší (resp. výška nie je známa), veľmi použiteľné to asi nebude, a ak áno, tak za cenu veľkosti obrázku. Možno sa nájde niekto, kto to vie vyriešiť lepšie...
margin
Profil *
Možná bys mohl použít 10px horní margin. Pozadí se pak bude zobrazovat 10px odshora, ale nevím, zda ti to nenaruší design.
Tebou zmíněné přidání dalšího elementu je standardní řešení, pokud není možné použít horní margin.
Řešení, které navrhuje han5vk, se hodí pro jednoduché obrázky ve formátu PNG, pro jiné obrázky datová velikost naroste nad přijatelnou velikost.
Napadá mě ještě použít další pozadí, 10px vysoký jednobarevný obrázek (neopakující se nebo opakující se vodorovně), který by svisle opakující se obrázek překryl. Má to mouchy, starší prohlížeče (IE8) vícenásobné pozadí nepodporují a řešení je použitelné jen při jednobarevném pozadí stránky.
Kód + ukázka
Holá ukázka
David1256
Profil
Díky za postřehy. Podobné myšlenky se mi honily také hlavou, ale vždycky to mělo nějaké to "ale". Nejmenší "ale" je udělat obrázek na pozadí dostatečně velký, aby se nemusel opakovat. Snad nebude datově moc velký. Pokud ano, nezbyde mi nic jiného než předivovat. Díky za všechny rady, člověk vždycky chytí nějaký směr.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: