Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: style VS class
 
 автор: Viacheslavix   (21.01.2013 в 11:35)   письмо автору
 
 

Добрый.

Какой вариант Вы считаете наиболее эффективным? Вариант, с использованием style для элементов или class?

Два варианта для примера:
<html>
    <body>
        <div style="color: #c00; font-size: 16px; text-decoration: underline">Привет, мир!</div>
    </body>
</html>

<html>
    <head>
        <link type="text/css" href="style.css" rel="stylesheet">
    </head>
    <body>
        <div class="red big underline">Привет, мир!</div>
    </body>
</html>
, где в style.css:
div.red { color: #c00 }
div.big { font-size: 16px }
div.underline { text-decoration: underline }

P. S. К комбинации red big underline не придираться, и не заставлять запихивать в один class, так как комбинации могут быть различными (где-то big underline, где-то red big и так далее).

  Ответить  
 
 автор: Viacheslavix   (21.01.2013 в 11:43)   письмо автору
 
   для: Viacheslavix   (21.01.2013 в 11:35)
 

Меня беспокоит лишь одно (возможно, глупо). Если отключится style.css, то все на сайте поплывёт к едрёну, так как останутся лишь никому неизвестные class имена, а если использовать style, всюду, то, естесственно, всё сохраниться, а если вообще не использовать class, так и подавно. Но зато для изменения чего-то на сайте внешне придётся поправить это не в одном файле, а на всех страницах.

  Ответить  
 
 автор: DJ Paltus   (21.01.2013 в 13:43)   письмо автору
 
   для: Viacheslavix   (21.01.2013 в 11:43)
 

Надо сделать так, чтобы пользователь при желании мог подключить свою таблицу стилей и получить при этом гарантированно читабельный текст с расставленными где надо иллюстрациями. Это означает внешний css-файл (а то и несколько), либо секцию style в шапке сайта, и логически последовательную верстку. Но это конечно не к классам в первую очередь относится, а к наборам элементов разметки и их иерархии. Без классов при верстке зачастую вообще можно обойтись. Как и без идентификаторов.
Да и самому же удобнее редактировать правила стилей, если они все списком, а не рассованы по коду.

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 00:43)   письмо автору
 
   для: DJ Paltus   (21.01.2013 в 13:43)
 

Это как для одной известной социальной сети было время, когда, подключая собственные стили через javascript, создавали собственные оформления, включая свои фоновые картинки и прочее?

  Ответить  
 
 автор: DJ Paltus   (22.01.2013 в 12:44)   письмо автору
 
   для: Viacheslavix   (22.01.2013 в 00:43)
 

Не совсем. В настройках браузера можно включить игнор стилей, поставляемых вместе с сайтом, и просматривать все материалы интернета в своем любимом виде, подключив свои таблицы стилей. Естественно, я еще не видел людей, кто этим бы пользовался, но по логике, сайт должен это позволять и не развалиться.

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 13:01)   письмо автору
115.7 Кб
 
   для: DJ Paltus   (22.01.2013 в 12:44)
 

А, это-то, ну да, есть такое.

  Ответить  
 
 автор: ЯСА   (21.01.2013 в 17:59)   письмо автору
 
   для: Viacheslavix   (21.01.2013 в 11:43)
 

способов добавления на страницу правил стиля существует 3 (три):
(1) in-line (внутри тегов)
(2) embedded (внутри стилевого блока)
(3) external (подключение внешнего css-файла)

во втором (2) и (3) можно использовать синтаксис с селекторами-классами

вы противопоставляете способ добавления стиля (1) с возможностями синтаксиса способов (2) и (3),
при этом объясняете это противопоставление различием способов (1) и (3), позабыв о способе (2)

в общем, сравниваете "лёд" и "гипотенузу" или "чернильницу" и "храбрость" (эти примеры не я придумал - взял из статьи "Сравнение" Логического словаря-справочника)
--------------

если страницы сайта и CSS-файлы находятся на одном хосте (и на одном доменном имени), то проблема "отключения css" в результате неподключения css-файла - в настоящее время надуманна
таковое я встречал очень редко и очень давно - когда скорость интернет-соединения была не просто "маленькой", а "очень маленькой"; сейчас такого практически не бывает

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 00:41)   письмо автору
 
   для: ЯСА   (21.01.2013 в 17:59)
 

Как это из низкой скорости css-файлы не подключались?

  Ответить  
 
 автор: ЯСА   (22.01.2013 в 01:43)   письмо автору
 
   для: Viacheslavix   (22.01.2013 в 00:41)
 

так это

1) браузер прочитывает строки кода одну за одной и СРАЗУ ЖЕ их отображает по одной - как только прочитает

2) браузер по определению НЕ ИМЕЕТ ПРАВА отображать тег <BODY> и всё, что за ним следует ДО ТОГО, пока он не загрузит ВСЁ, что подключается в хедере (внешние css- и js-файлы, прописанные между тегами <head> и </head>)

3) процессы загрузки всех объектов идут параллельно:
-- браузер грузит HTML-файл
-- встретил браузер в этом HTML-файле строку <link href="file.css"> - он продолжает грузить текущий HTML-файл и параллельно начинает загружать файл file.css, для чего отправляет HTTP-запрос на сервер (с сервера должен поступить HTTP-ответ, что такой файл существует)

4) если скорость очень низкая, то браузер успеет загрузить ещё десять-пятнадцать строчек HTML-кода, дойдёт до тега <BODY> и ниже него, но отображать их не может, потому что ещё не загрузил file.css - а там ещё HTTP-ответ с сервера не пришёл
браузер предполагает, что сервер, где находится файл file.css, вовсе недоступен,
и перестает ждать HTTP-ответа от сервера, и отображает HTML-файл без подключения внешнего CSS-файла
----------------------
----------------------

но это всё - неактуально, потому что сейчас таких низких скоростей просто не бывает

ГЛАВНОЕ, в чём вы ошибаетесь, как я понял, это то, что вы почему-то ошибочно полагаете, что опция браузера "Отключить стили страницы" - она якобы отключает только внешние css-файлы

ЭТО НЕ ТАК!
опция браузера "Отключить стили страницы" отключает вообще ВЕСЬ код CSS на странице, где бы он ни был - и внутри тегов, и в стилевом блоке, и во внешних подключаемых файлах

  Ответить  
 
 автор: Sfinks   (22.01.2013 в 09:22)   письмо автору
 
   для: ЯСА   (22.01.2013 в 01:43)
 

> но это всё - неактуально, потому что сейчас таких низких скоростей просто не бывает
К сожалению бывает =( В регионах в частном секторе, где широкополосный инет не тянут в принципе, а 3G-сеть работает через пень-колоду.
И бывает довольно часто, т.к. все расслабились с быстрым инетом и страница весом в 1,5-2 метра с подключением 150-200 внешних файлов уже никого не удивляет (руки бы таким верстальщикам оторвать). В результате канал так забивается, что может больше половины всех этих файлов не подключиться =(

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 13:09)   письмо автору
 
   для: Sfinks   (22.01.2013 в 09:22)
 

Здесь я стараюсь решать проблему.

1) Минимум css-файлов, которые обязательно должны кешироваться.
2) Минимум JS (из библиотек лишь jQuery)

В сумме получается 160 Кб загружаемых данных (css+js).

Всё время стараюсь уменьшить их размеры (хотя бы на 1 Кб каждый раз, когда берусь за это).

  Ответить  
 
 автор: ЯСА   (22.01.2013 в 17:27)   письмо автору
 
   для: Viacheslavix   (22.01.2013 в 13:09)
 

>>Всё время стараюсь уменьшить их размеры (хотя бы на 1 Кб каждый раз, когда берусь за это).
Минимум JS (из библиотек лишь jQuery)


ага, я тоже стараюсь не есть сладкого
лишь только одну бочку мёда в день, никак не больше :))

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 19:38)   письмо автору
 
   для: ЯСА   (22.01.2013 в 17:27)
 

Да да да, знаю, о чём Вы. Думаете я не понимаю? Пока просто не углублялся в JS на собственном сайте. Закончу с другими вещами, займусь и Явой. Мне от jQuery не нужно ничего особо сильно, только пара анимаций да смен значений. Просто они стараются кроссбраузерно всё создавать, а мне это важно.

А так-то понятно, уберу jQuery и -60 Кб сразу, 100 Кб останется лишь )

  Ответить  
 
 автор: Viacheslavix   (22.01.2013 в 19:40)   письмо автору
 
   для: Viacheslavix   (22.01.2013 в 19:38)
 

Ой, там все -90 Кб оказывается )

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования