Можно кратко и для самых продвинутых про кеширование css? Хочу, чтобы мой форум грузился в два раза быстрее :)
можно. Страниц на форуме у вас много, а вот css один на всех.
Выносите в css вобще все что связано с форматирование отображения. Инлайн свойств быть не должно.
Множественные класы тоже нафиг не уперлись (например <div class="window black some_long_class_name">), так делают в крупных проектах и у них свои причины.
У повторяющихся элементов вобще не должно быть ни классов ни инлайн свойств, т. е:
<table id="thread">
<tr>
<td>это столбец строки моей темы на форуме</td>
</tr>
</table>
<style>
#thread tbody td,
#thread > tbody > tr > td /*или так*/
{
background:#000;
}
</style>
а не
<table>
<tr>
<td class="forum_coll">это столбец строки моей темы на форуме</td>
</tr>
</table>
<style>
.forum_coll
{
background:#000;
}
</style>
Кстате, я пишу id="thread" ибо как правило я описываю обищй css для всех таблиц, классы для всяких общих штук, но частные вещи прибиваю к айди элемента, ибо так проще структурировать иразбирать css файлы потом.
Затем сжимаете css компресором, грузите страничку хромом или фаерфоксом и в веб тулзах смотрите кешируется ли оно и на какое время. Далее при желании открываем на серваке .htaccess и при помощи Mod_expires ставим expired где нить месяц и добавляем gzip сжатие страничек.
Конечно нынче у всех 5-40 мбит/с инет и вес страницы впринципе побарабану, но вы удивитесь как оптимизация странички может сказать на субъективном ощущении комфорта.
Ибо (для примера):
- табличка прорисовывается вся разом, посему если насажать в нее скажем <select> вагон то прорисовываться она станет куда дольше. Иногда форумы делают не таблицой а дивами, тогда можно сделать бесконечную ленту, которая догружается при скролле вверх и вниз.
- нынешние броузеры ограничены 5 потоками загрузки, посему если у вас очень много картинок/пиктограмок то суем их в спрайт или делаем шрифтом.
Ну и еще приятней становится если вы используете аякс, ибо броузер перестает перерисовывать всю страничку (тогда вопрос кешированичя файлов впринципе можно бросить нафег)