Autor Zpráva
lukas7
Profil
Dříve jsem narazil na stránky, kde se měnil vzhled podle času (dopoledne/odpoledne/večer) tedy web byl svetlejší (např. od 7do 19h), a v noci tmavý (př. od 19-7h ráno). Bohužel zpětně nemůžu tento web naleznout, a ani žádný příklad jak podobného výsledku dosáhnout jsem nenalez. Chci tedy požádat o radu jak nato.

Díky
__construct
Profil
Jednoduché riešenie cez JS
Chamurappi
Profil
Reaguji na lukase7:
var hodina = new Date().getHours();
if(hodina < 7 || hodina >= 19) document.documentElement.className = "noc";
Nastaví třídu noc pro <html>, pokud je hodina menší než 7, nebo větší či rovna 19. Člověk bez podpory JavaScriptu bude bez noci nepřetržitě.

Vepsat dotyčnou třídu již na straně serveru by bylo asi lepší.
Kajman_
Profil *
Chamurappi:
Vepsat dotyčnou třídu již na straně serveru by bylo asi lepší.

Server hůře rozpozná hodinu návštěvníka. Pokud má být noc z celé zeměkoule, když je noc u člověka, co si to prohlíží, bude lepší ten js, ne?

Horší to bude s rozpoznáním, zda navštěvník nemá polární noc či den.
TomasJ
Profil
Chamurappi:
Myslím si, že __constructův tip je lepší.

EDIT: Důvod doplněn.
DŮVOD:
Nejšpíš, když bude noc, bude tmavší i grafika ([#1] - „tedy web byl svetlejší“), ne jen písmo, z toho důvodu mi constructovo řešení připadne lepší, protože se bude měnit i grafika.

EDIT2: Cituji věty z [#1]: (ještě jednou pro Chamurappiho)
Dříve jsem narazil na stránky, kde se měnil vzhled podle času (...) tedy web byl svetlejší (... 7do 19h) a v noci tmavý (... 19-7h ráno)“. Já nevidím nikde napsáno, že se na tom webu změnil jen text (persp. jeho barva), a proto jsou pro mě prioritní ty tučně zvýrazněné kousky vět výše, které říkají, že WEB se měnil - logicky vzato - grafika se měnila, takže ne jenom to písmo.
Chamurappi
Profil
Reaguji na TomaseJ:
Bez uvedení důvodů je to věc zbytečného názoru.
Pokud se mají měnit jen barvy a ne celý layout, písma apod., je zbytečné duplikovat většinu stylopisu. Rozdělením do více souborů (na společnou a proměnlivou část) zase zbrzdíš načítání o jeden HTTP požadavek a podmíněným vpisováním stylopisu zkomplikuješ kešování a ukládání/archivaci.


Reaguji na Kajmana:
Pokud má být noc z celé zeměkoule, když je noc u člověka, co si to prohlíží, bude lepší ten js, ne?
Asi ano.
TomasJ
Profil
Chamurappi:
Speciálně pro tebe jsem doplnil důvod, tento příspěvek můžeš smazat, až si ho přečteš :)
Chamurappi
Profil
Reaguji na TomaseJ:
Důvodu bohužel nerozumím.
TomasJ
Profil
Chamurappi:
Teď už bys mohl porozumět důvodu a též bys mohl smazat [#7], ale jak chceš, jen abys pak nehudroval (nic ve zlém), že tu píši jak kdybychom byli na chatu.

EDIT:
zase zbrzdíš načítání o jeden HTTP požadavek
Myslím, že to už nebude tak strašné.
Ať se vyjádří sám lukas7, jestli mu stačí změna barvy textu a nebo i změna obrázků.
Bubák
Profil
Já bych všechny ty javascipty a internety zakázal ;-)

Raději mám, když si vzhled můžu přepínat sám, třebas jako na www.root.cz ikonkou vpravo nahoře.

Kajman:
Server hůře rozpozná hodinu návštěvníka. Pokud má být noc z celé zeměkoule, když je noc u člověka, co si to prohlíží, bude lepší ten js, ne?
>
Horší to bude s rozpoznáním, zda navštěvník nemá polární noc či den.
Server dokáže podle IP s lokalizovat pro tento účel s dostatečnou přesností , kde jsem.

TomasJ:
Nejšpíš, když bude noc, bude tmavší i grafika ([#1] - ‚tedy web byl svetlejší‘), ne jen písmo, z toho důvodu mi constructovo řešení připadne lepší, protože se bude měnit i grafika.
Jsou lidé, kteří mají grafiku v HTML. A jsou lidé, kteří používají CSS.
Chamurappi
Profil
Reaguji na TomaseJ:
Dobře, tak pokud se mají měnit jen barvy a obrázky a ne celý layout, typy písma apod., je zbytečné duplikovat většinu stylopisu.
Změnou třídy lze v drtivé většině případů dosáhnout stejného efektu jako nahrazením celého stylopisu. Jen ve zcela výjimečných případech se vyplatí skutečně prohazovat celé stylopisy.

abys pak nehudroval
V dialogu je naprosto přirozené, že se diskutéři střídají (a není to chat). Tenhle tvůj editační postup to poněkud znepřehledňuje :-)
lukas7
Profil
No koukám, že tu začala hezká diskuze:). Díky za vaše rady a odkazy!

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0