ugrás a tartalomhoz

Writing CSS For Others

Joó Ádám · 2011. Aug. 28. (V), 16.45
Tanácsok a stíluslapok szervezéséhez
 
1

Ami a tulajdonságok

Joó Ádám · 2011. Aug. 28. (V), 16.48
Ami a tulajdonságok rendezését illeti, az ábécérenden kívül minden más szubjektív, egyedül ez egzakt. Az pedig, hogy a több állományba való szétbontás növeli a HTTP kérések számát, olyan közkeletű tévhit, ami fájdalmasan ráirányítja a figyelmet a gyorsítótárazással kapcsolatos ismeretek hiányára.
2

Lehet, hogy én tudom rosszul,

Hidvégi Gábor · 2011. Aug. 28. (V), 17.03
Lehet, hogy én tudom rosszul, de ha nem adsz meg a jövőben lejáró Expires fejlécet, akkor a böngészők kiküldik az If-Modified-Since-et az adott fájlra, ami akkor is kérésnek számít, ha 304 Not Modified-et küld vissza a szerver.

A magam részéről a tulajdonságokat ugyanúgy csoportosítom, ahogy a cikk szerzője, hosszú távon így találtam áttekinthetőnek a CSS-t. Dehát ízlések és pofonok különbözőek.
3

Verziózd a stíluslapot query

Joó Ádám · 2011. Aug. 28. (V), 17.26
Verziózd a stíluslapot query string paraméterben, és akkor megadhatsz bármekkora szavatossági időt.
4

Ez egy megoldás, de nem zárja

Hidvégi Gábor · 2011. Aug. 28. (V), 17.56
Ez egy megoldás, de nem zárja ki azt, amit írtam.
5

Nem igazán értem a válaszod.

Joó Ádám · 2011. Aug. 28. (V), 20.55
Nem igazán értem a válaszod.
7

Alapértelmezésben az Apache +

Hidvégi Gábor · 2011. Aug. 29. (H), 08.17
Alapértelmezésben az Apache + php páros nem küld ki Expires fejlécet, azaz minden egyes fájlhoz megy HTTP kérés; erre megoldás, ha verziózol, de ez rajtad (vagy az általad használt keretrendszeren) múlik. Erre jó példa pont a weblabor, pár fájl kivételével mindhez megy a kérés.
11

A Weblabor egyáltalán nem jó

Joó Ádám · 2011. Aug. 29. (H), 14.01
A Weblabor egyáltalán nem jó példa.
14

Összeszámoltam, minden

Hidvégi Gábor · 2011. Aug. 29. (H), 14.14
Összeszámoltam, minden oldalmegnyitáskor 11 css és 4 js fájlt ellenőriz le, mindre 304 a válasz, és ezeken nincs Expires fejléc, viszont verziózva vannak (vagy legalábbis úgy tűnik).
16

Szerver beállítás

Poetro · 2011. Aug. 29. (H), 14.24
Ez már szerver beállítás kérdése. Csak be kellene kapcsolni pár Apache httpd modult, és sokkal jobb lenne a felhasználói élmény.
18

Mondom én, hogy nem a

Joó Ádám · 2011. Aug. 30. (K), 01.21
Mondom én, hogy nem a Weblaborról kell példát venni :)
20

Nagy nehezen leesett : )

Hidvégi Gábor · 2011. Aug. 30. (K), 09.32
Nagy nehezen leesett : )
6

Arról nem is beszélve, hogy

Joó Ádám · 2011. Aug. 28. (V), 20.59
Arról nem is beszélve, hogy ha mindent egybecsomagolunk, akkor a kód bármely részének változása magával vonja minden kód ismételt letöltését. Pedig teszemazt a CSS reset ritkán változik.
8

azt azert ne felejtsuk el,

Tyrael · 2011. Aug. 29. (H), 11.28
azt azert ne felejtsuk el, hogy az altalad emlitett cacheles nem sokat segit azokon a felhasznalokon, akik az elso latogatasuk alapjan(ures kliens oldali cache=>tobb tucat/extrem esetben tobb szaz http request, cdn nelkul 1 domainrol. :/) talaljak lassunak az oldalt.
a kepek spriteolasa illetve nyilvan esszel de a css/js fajlok egybegyurasa ezeknek a felhasznaloknak is erezheto gyorsulast hoz, hiszen nem kell megvarniuk az N darab roundtripet, csak mondjuk a felet.

Tyrael
9

Ez így van, és a helyzet

Hidvégi Gábor · 2011. Aug. 29. (H), 12.16
Ez így van, és a helyzet rosszabb nagyobb portálokon, ahol akár több külső reklámszolgáltatótól is jelenítenek meg bannereket. A magam részéről a minél kevesebb fájlra szavazok, de pl. a sprite-ok technikáját annyira nem favorizálom, mert jelentősen megnöveli megnöveli a képekkel töltött munkaidőt.

Persze hozzá kell tenni, hogy a modern böngészők egyszerre több kapcsolatot hoznak létre a szerverrel, valamint az ADSL-ek és kábelnetek sebessége is jelentősen megnőtt, ezért sokkal jobb a helyzet, mint pár éve.

Ez mondjuk a probléma erőből való megoldása, a hiba magában a HTTP protokollban van, sokkal célszerűbb lenne egy új protokoll kidolgozása, ahol pl. egy kérésen belül lehetne egyszerre több ellenőrzést végrehajtani, vagy több fájlt letölteni.
10

erre lenne megoldas a HTTP

Tyrael · 2011. Aug. 29. (H), 12.42
erre lenne megoldas a HTTP Pipelining, ha nem lenne a bongeszo tamogatottsaga ilyen gyalazatos

Tyrael
12

A külső szolgáltatók felé

Joó Ádám · 2011. Aug. 29. (H), 14.03
A külső szolgáltatók felé szimultán megnyithatók a kapcsolatok.
15

Sprite-ok

Poetro · 2011. Aug. 29. (H), 14.23
Azért a sprite-okkal nem olyan nehéz dolgozni, egy magára valamit is adó grafikus is elő tudja állítani őket, főleg ha nem vesszük figyelembe az IE6-ot, akkor lehet normális transzparens PNG-kkel dolgozni. A képeknek nem is kell olyan nagyon közel állni egymáshoz, ugyanis legfeljebb pár bájtot lehet vele megtakarítani, talán csak CSS-ben kell vele valamivel többet bűvészkedni. Mondjuk én már kb. 5 éve szinte csak sprite-okkal dolgozok, lehet ezért tűnik könnyebnek az eljárás, mindenesetre eddig minden dizájnerrel sikerült megértetni a problémát és a megoldást.

Az, hogy mit tud az ADSL és a kábelnet, azért nem minden, ugyanis az internetezők jelentős hányada valamilyen mobil internetet használ, ahol azért még nem feltétlen érkezett el a sebességbeli Kánaán, főleg ha a kapcsolódási időt nézzük (a változó letöltési sebességről már ne is beszéljünk).
13

Üres gyorstárral sem volna

Joó Ádám · 2011. Aug. 29. (H), 14.07
Üres gyorstárral sem volna szabad olyan lassan betöltődnie egyetlen HTML oldalnak sem, hogy az kényelmetlenséget okozzon a felhasználónak. Ha mégis így van, az súlyos architekturális problémákat sejtet (feleslegesen hivatkozott állományok, redundáns forráskód, táblázatok, képek szöveg helyett, indokolatlan parancsfájlok sít.).
17

nyilvan a cel ez lenne. es ez

Tyrael · 2011. Aug. 29. (H), 15.16
nyilvan a cel ez lenne.
es ez az a pont, ahol a karbanttarthatosag, illetve a modularitas szembe kerul a teljesitmennyel (letoltendo fajlok szama), erre lehet 1 megoldas, hogy nem tartja fel egyik keres a masikat(js fajlok betoltese, vagy az 1 domainhez tartozo max-connections miatt), illetve hogy ne kelljen minden lapletoltesre a teljes tcp/ssl handshake-et lejatszani (keepalive) valamint egy ha 1 tcp kapcsolaton tudod multiplexelve tolteni a fajlokat (http pipelinening).

Tyrael
19

Labda a böngészőknél.

Joó Ádám · 2011. Aug. 30. (K), 01.24
Labda a böngészőknél.