Autor Zpráva
Sylar
Profil
Zdravím,
potřeboval bych poradit, jak udělat přes celou obrazovku lightbox efekt - tzn. celá obrazovka se pokryje jakýmsi tmavým potahem a nebude přístupná ... na to nechci obrázky jako klasický lightbox ale potřebuji tam dát např upload, nebo formuláře apod ... zdá se mi to lepší jak popup okna, vypadá to líp ... nevíte někdo jak na to prosím? z lightboxu si to sám vyseparovat nedokážu protože js není zrovna můj kamarád, tak bych potřeboval nakopnout správným směrem ...
všem díky
Radek9
Profil
Uděláš si <div> s průhledným pozadím , šířkou a výškou 100% a s position: fixied;.
Sylar
Profil
ok díky ... jen mrkni v IE6,7,8 ... tam se mi ten obsah zobrazuje až pod tím fixed divem, když odscroluju stránku ... kdepak soudruzi z NDR udělali chybu ? <del>URL ADRESA</del>
Bubák
Profil
Chybu udělali soudruzi z Microsoftu, že IE6 nezná position: fixied;
Chybu jsi udělal ty, že máš novější verze IE ve quirk (kompatibilním) vykreslovacím režimu, proto zobrazují stránku, jako IE6.
Zkus prozatím pro IE pomocí podmíněných komentářů deklarovat position: absolute; ale nebude to dokonalé.
Další možnost je kouknout se do nějakého lightboxu, jak to řeší a inspirovat se. Nebo třeba někdo znalejší prozradí.
Sylar
Profil
Bubák
díky
co se týče toho quirk režimu, tak já mám ie6 orig z winů a 7 a 8 ze softu CollectionIE a po úpravách co jsem provedl se mi to u každého zobrazovalo jinak, takže tím to asi nebude ... NICMÉNĚ ... vyřešeno ...

1) Změna DOCTYPU z Transitional na Strict (standardně ho používám, jen sem tam tedka nechal díky lenosti Transitional ze šablony z PSPadu)

2) nálsedující kód do stylů
- u body, html nastavíme overflow: auto a height. Nulový margin by pak měl zapříčinit zobrazení druhého scrollbaru, to se mi však nepodařilo (což mi ale v téhle fázi vůbec nevadí)
- u divu#lightbox podmíníme positon pro IE6 na relative

  body, html {
    _overflow: auto;
    _height: 100%;
    _margin: 0;
  }
  
  div#lightbox {
    width: 100%;
    height: 100%;
    position: fixed;
    _position: relative;
    background: url('obrazek.png') repeat;
  }


jednoduché :-) viz také http://www.jakpsatweb.cz/css/priklady/fixed-position-explorer-simulation.html
keeehi
Profil
Sylar:
co hodláš udělat s uživateli s IE 6, IE 5.5 a s IE staršími?

celý test
Bubák
Profil
sem tam tedka nechal díky lenosti Transitional ze šablony z PSPadu
Šablony jde jednoduše upravit, doporučuji.
Sylar
Profil
keeehi
Na pozadí je průhledný png obrázek. Průhledné png IE6 nepodporuje. Průhlednost se ale dá vyřešit i jen přes css nebo přes gif obrázek ... tohle už at si vyřeší každý sám :-) řešení zde jsou ...
Na uživatele s IE 5.5 neberu ohledy ani v jiných směrech, takže zde nebudu dělat výjimku. Myslím že být o 4 plné verze prohlížeče pozadu je trestuhodné a takoví uživatelé mi at už na firemním webu či osobním blogu apod stejně neudělají nic dobrého ... IE 5.5 je dnes prostě už mrtvý prohlížeč a pomalu ale jistě začíná být i IE6 ... za půl roku/rok se na něj vykašlu také ...

Bubák
to máš pravdu, ale zase ta lenost :-P ... možná se k tomu ale někdy dostanu :-)
Ofi
Profil
já bych to vyřešil takto:
nastav hodnotu position:absolute a pomocí js si zjisti kolik má uživatel odrolováno od topu
  function scrollPosition(){

	var yScroll;

	if (self.pageYOffset) { // mozilla
		yScroll = self.pageYOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
	} else if (document.body) {// ostatní Explorery
		yScroll = document.body.scrollTop;
	}

	return yScroll;
  }


pokud chceš aby se ti ten div zobrazil uživateli "před čumákem" a je ti jedno že nebude přesně ve prostřed tak mu nastavíš top takto:

var PageScroll = scrollPosition();
      
      document.getElementById("divId").style.top = ((PageScroll +  35) + 'px');


a div se zobrazí uživateli přímo předním nehledě na tom kde na stránce bude ( sice nebude fixní, ale bude předním a funguje to i ve starších prohlížečích)

pak pokud to chceš centrovat tak už si poradíš ;)
Bubák
Profil
Pro inspiraci: http://css.interval.cz/priklady/priklad-111-1.htm

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0