Autor Zpráva
Skg
Profil *
Nechápu jednu věc v souvislosti s position: absolute.

Je-li pomocí "position: absolute" napozicován div doleva (se zápornou hodnotou), takže přesahuje rozměr (dle rozlišení) okna monitoru, prostě se přesahující část divu odřízne a tím to končí. V pořádku.

Je-li však napozicován doprava, takže přesahuje rozměr okna monitoru, neodřízne se, ale v okně se zobrazí horizontální posuvník, okno prohlížeče se roztáhne...

Lze zajistit, aby se div absolutně napozicovaný doprava choval stejně, jako při levém okraji, t.j. neroztahoval okno prohlížeče?

(Mám po straně vycentrovaného těla webu absolutně napozicované ornamenty v prázdném divu jako obrázek na pozadí, ale vpravo se to chová neslušně...)

Díky za radu.
Ugo
Profil
zkus nadřazenému relativnímu prvku dle kterého chceš řezat dát overflow:hidden (např. body, html)
Skg
Profil *
Ugo:

Jj, ale mně šlo o něco trochu jiného. Když je web zobrazen na monitoru o nižším rozlišení (např 1024 x něco) než je šířka levý ornament+tělo webu+pravý ornament, levý div je v části přesahující šířku obrazovky v pořádku ořezaný, tělo webu zobrazeno vprostřed, ale krom toho se dole zobrazí horizontální posuvník, protože pravý div ořezaný není - roztahuje (narozdíl od stejně nadefinovaného divu napozicovaného vlevo) obrazovku :(

Kdybych zmenšil šířku nějakému nadřazenému prvku a dal mu overflow, budou ornamenty ořezané vždy i na obrazovce o dostatečné šířce (1280 x něco a víc) a to nechci. Jde mi o to, aby se zobrazovaly celé, ale při nižším rozlišení monitoru, aby se pravý div choval stejně jako ten levý (i když krom pozice jsou nadefinovány naprosto stejně, takže by snad měly [?]).

Proč se div pozicovaný za levý okraj ořízne a tentýž div napozicovaný vpravo zvětšuje šířku webu?
Keeehi
Profil
Oříznutí přebytečné grafiky
Řešil jsem to samé, jen jsem k tomu nepotřeboval pozicování a vyřešit se mi to nakonec povedlo. Třeba to můžeš udělat stejně.
Tomáš123
Profil
Skg:
To správanie je trochu nelogické... Možno preto, že nie je rozdiel, medzi príliš širokým prvkom, ktorý správne vyvolá posuvník a prvkom ktorý je zámerne zápornou hodnotou posunutý z viewportu. Ale existuje finta. V IE8 funguje, staršie prehliadače nemám k dispozícii.

Nestaticky poziciovaný objekt sa štandardne tlačí doľava. Zároveň, vlastnosť top má väčšiu prioritu ako vlastnosť bottom a left prebije right (platí iba ak má objekt nastavené rozmery, ak rozmery nastavené nemá, prvok sa roztiahne tak, aby bol zhora vzdialený o hodnotu vlastnosti top, zľava o hodnotu vlastnosti left a tak ďalej).

Prioritu vlastností left a right ide meniť zmenou smeru písania textu. Pri texte písanom sprava doľava (direction: rtl) má väčšiu prioritu vlastnosť right a ovplyvňuje to aj orezávanie objektov za hranou okna prehliadača. Živá ukázka

Kvôli tomuto efektu bude často nutné vytvoriť obalový prvok navyše. V rámci obalu sa direction prestaví na rtl a potom sa pre bežný obsah zas vráti na ltr.

Grafika by nemala byť zapísaná v HTML. Vždy je pre účely grafiky lepšie uprednostniť pseudoelementy :before a :after, prípadne sa pohrať s paddingom a záporným marginom.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0