По-бързо зареждане на css

ystefanov

Registered
Имам следния проблем в един статичен сайт . CSS файла ми тежи 38,9Кб, не знам това колко е много или малко, но ми се струва множко (при оптимизиран код).
Проблема е, че всяка от страниците е с отделен дизайн (отделно позициониране на елементите) и при добавяне на нова страница се добавят по средно 7-8 реда код.

Предполагам, че при зареждането на някоя страница ЦСС-а ще забавя този процес. Дали ще трябва да огранича последващия написан код или има начин ЦСС-а да се зарежда по-бързо?
 
Щом е оптимизиран, мисля, че друг начин няма. :)
 
Начини винаги има

Проблема е, че всяка от страниците е с отделен дизайн (отделно позициониране на елементите) и при добавяне на нова страница се добавят по средно 7-8 реда код.

Нещо не ми е ясно - хем всяка страница е с различно позициониране, хем се добавят само 7-8 нови реда код. Ако може да поясниш.

Опитай се да откриеш CSS класовете, които са с еднакви атрибути и стойности. Изнеси ги в отделен файл. Различията ги съхранявай в отделни CSS файлове - по един за всяка страница.

Браузъра ще сваля от твоя сървър CSS файла с еднаквите стойности само веднъж - в началото, а не на всяка страница. Другите файлове вероятно ще са много малки - по 1-2 КБ и ще се свалят достатъчно бързо.

Отделно от това, използвай някоя програма за минимизиране на CSS файловете. Тези програми премахват интервалите, празните редове, коментарите и т.н. Файла става по-малък, но е почти невъзможно да го редактираш в бъдеще, затова винаги си пази едно работно копие, което не е минимизирано. Вероятно си срещал имена на файлове като styles.min.css или jquery.min.js

YSlow например се инсталира като plug in във Firefox, има го и като част от Firebug. Дава ти възможност да свалиш минимизирани версии на CSS и JS, както и други съвети.
 
Има и подобна опция (за минимизиране) в Notepad++. Edit -> Blank Operations -> EOL to Space, прави го на един ред, но оставя и интервали...
 
Защо мислиш ,че е точно от css-a? Дай го тоя Css да го видим кво му е, аз лично не мисля ,че е от него, може да е от js-a
 
Не в момента не ми бави, само ме интересуваше, тъй като цсс-а ми се струва големичък - 38,9Кб и се очаква да стане повечко килобайти, дали след това би оказало негативно влияние при зареждане ...
 
exec каза:
Начини винаги има

Проблема е, че всяка от страниците е с отделен дизайн (отделно позициониране на елементите) и при добавяне на нова страница се добавят по средно 7-8 реда код.

Нещо не ми е ясно - хем всяка страница е с различно позициониране, хем се добавят само 7-8 нови реда код. Ако може да поясниш.

Опитай се да откриеш CSS класовете, които са с еднакви атрибути и стойности. Изнеси ги в отделен файл. Различията ги съхранявай в отделни CSS файлове - по един за всяка страница.

Браузъра ще сваля от твоя сървър CSS файла с еднаквите стойности само веднъж - в началото, а не на всяка страница. Другите файлове вероятно ще са много малки - по 1-2 КБ и ще се свалят достатъчно бързо.

Отделно от това, използвай някоя програма за минимизиране на CSS файловете. Тези програми премахват интервалите, празните редове, коментарите и т.н. Файла става по-малък, но е почти невъзможно да го редактираш в бъдеще, затова винаги си пази едно работно копие, което не е минимизирано. Вероятно си срещал имена на файлове като styles.min.css или jquery.min.js

YSlow например се инсталира като plug in във Firefox, има го и като част от Firebug. Дава ти възможност да свалиш минимизирани версии на CSS и JS, както и други съвети.
Не трябва да има различни css файлове. Целия css трябва да ти е в 1 файл и в .htaccess файла казваш този файл да се кешира от браузъра за 2 години да кажем. Това ще каже, че браузъра го сваля на харда, и за всяка заявка към сайта няма да се сваля отново, а ще се вземе от кеша.

Ако трябва да сменяш стайловете, единственото е да смениш името на css файла където го добавяш в хтмл-а. Така браузъра отново ще го свали веднъж, и ще се запази в кеша.

Ако използваш хостинг като hit.bg, който мисля, че не даваше да си бараш .htaccess файла също не мисля че трябва да правиш по 1 css файл за всяка страница.
 

Back
Горе