Марат Б.
212 повідомлень
#14 років тому
Всем привет =)
Накопилось ряд вопросов.
1. Часто приходиться в ходе поддержке проекта прописывать в html свойства css (через style). Насколько это правильно? Не нужно ведь всегде создавать классы или id, когда это единичный случай, я правильно понимаю? Как ты обычно поступаешь/поступал?
2. Что лучше использовать - class/id? К примеру, если блок используется только один раз на странице. Как лучше в плане производительности (что быстрее)?
3. Что лучше: cufon или font-face?
Артём К.
1157 повідомлень
#14 років тому
Цитата ("MaratMaratMarat"):
1. Часто приходиться в ходе поддержке проекта прописывать в html свойства css (через style). Насколько это правильно? Не нужно ведь всегде создавать классы или id, когда это единичный случай, я правильно понимаю? Как ты обычно поступаешь/поступал?


Все css-стили нужно писать в отдельном css-файле.
Писать css-стили прямо в коде совершенно не правильно.

Цитата ("MaratMaratMarat"):
2. Что лучше использовать - class/id? К примеру, если блок используется только один раз на странице. Как лучше в плане производительности (что быстрее)?


Этот вопрос здесь обсуждали. class - используется для оформления css, id используется для программирования на javascript.
Везде нужно использовать class, использования id нужно избегать.

Цитата ("MaratMaratMarat"):
3. Что лучше: cufon или font-face?


Универсальное работающее решение в разных браузерах использует и то и другое.
Поддержка шрифтов в разных браузерах реализована по-разному.
Многочисленные правильные способы вставки шрифтов публикуются периодически, потом с выходом новых версий браузеров
снова корректируются.

Эти все способы - некое сборище хаков, в котором важное значение имеет порядок строк и хаки для разных браузеров.
Евгений Б.
5330 повідомлень
#14 років тому
1. если мы говорим про страницу для временного функционала и стили страницы меньше, чем общий сss, то костыль можно сделать, а вообще что мешает сделать класс/стиль и прописать его в общую таблицу?
2. классы для группы объектов, id для единичных. поиск по id в DOM быстрее
3. font-face более правильно, куфон - это костыль. хотя в целом счтаю, что использование левых шрифтов - это изврат.
Артём К.
1157 повідомлень
#14 років тому
Цитата ("ArtPro"):
2. классы для группы объектов, id для единичных. поиск по id в DOM быстрее


Даже для единичных элементов стоит использовать class.
id нужно использовать только для javascript

Цитата ("ArtPro"):
поиск по id в DOM быстрее


Для javascript id быстрее, чем class. Поиск id в DOM применяется в javascript.
Марат Б.
212 повідомлень
#14 років тому
По поводу первого пункта (вставка css в html). Имеется ввиду вставка style через аттрибут объекта html. К примеру, <img src = "some_iamge.png" style="margin-right: 30px" />
Неужели для такой ситуации Вы пишите правила в css и создаете класс для этого?
Артём К.
1157 повідомлень
#14 років тому
Цитата ("MaratMaratMarat"):
Неужели для такой ситуации Вы пишите правила в css и создаете класс для этого?


Именно так и нужно делать.
Сергеевич А.
791 повідомлення
#14 років тому
К 3 можно pcdtr добавить

генерация на сервере, с кэшем

Оффтопик
будь плохим парнем
верстай на id }
Марат Б.
212 повідомлень
#14 років тому
Ясно. Все же по первому пункту сомнения есть. Не свосме понятно, зачем столько классов плодить, если это единичный случай, да и неужели секретарша полезет в css файл )) Зачем тогда придумали редакторы )) Я про этот случай и говорю.
представьте на минуту, что имеется галлерея картинок, где каждый пункт спозиционирован индивидуально, цвета бордеров разные и пр. Будете писать в css файл?
Владимир М.
327 повідомлень
#14 років тому
MaratMaratMarat, руководствуйся здравым смыслом, а не догмой.
Зачем нужен общий CSS-Файл? Чтобы повторяемые стили объявлять единственный раз.Чтобы сэкономить на объёме передаваемых данных за счёт кэширования общей информации об оформлении. Если же элемент единственный в своём оформлении и не ожидается, что пользователь будет изо дня в день заходить на эту страницу им любоваться, то смысла выносить уникальное оформление в общий файл нет.
Следующий момент для принятия решения - удобство пользователя и разработчика. При современных каналах передачи данных экономия от кэширования десятка килобайт особой роли не играет по большому счёту. Если пользователю удобней задавать оформление через редактор в админке, сохраняющий изменения непосредственно в html-код - пусть будет.
Марат Б.
212 повідомлень
#14 років тому
Цитата ("intelleks"):
MaratMaratMarat, руководствуйся здравым смыслом, а не догмой.
Зачем нужен общий CSS-Файл? Чтобы повторяемые стили объявлять единственный раз.Чтобы сэкономить на объёме передаваемых данных за счёт кэширования общей информации об оформлении. Если же элемент единственный в своём оформлении и не ожидается, что пользователь будет изо дня в день заходить на эту страницу им любоваться, то смысла выносить уникальное оформление в общий файл нет.
Следующий момент для принятия решения - удобство пользователя и разработчика. При современных каналах передачи данных экономия от кэширования десятка килобайт особой роли не играет по большому счёту. Если пользователю удобней задавать оформление через редактор в админке, сохраняющий изменения непосредственно в html-код - пусть будет.


Вот я тоже так думаю. Просто хотел узнать мнения других технологов.


К примеру, вот ситуация . Для обтекания img задается float: left прямо в html.
Я вот схожие ситуации имел ввиду. Помимо этого у картинки еще может и отступ быть, который не будет повтояртьяс у других картинок.
Максим Ф.
3195 повідомлень
#14 років тому
Цитата ("intelleks"):
Если же элемент единственный в своём оформлении

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

Цитата ("MaratMaratMarat"):
К примеру, вот ситуация . Для обтекания img задается float: left прямо в html.
Я вот схожие ситуации имел ввиду. Помимо этого у картинки еще может и отступ быть, который не будет повтояртьяс у других картинок.

Там, похоже, картинка была вставлена в визуальном редакторе девочкой-блондинкой-контент-менеджером. Так же, как и некоторые клиенты умудряются портить дизайн внедрением своих жирных зелёных надписей в новостях, например. В вёрстке это выглядит как <_span style="bold; green; 20px; underline;">привет, посетитель моего сайта!</_span> Просто потому, что у них есть возможность это сделать. Давайте искать хорошие примеры вёрстки, не нужно ссылаться на неудачные страницы, пусть и известных брендов.
Елена Б.
6863 повідомлення
#14 років тому
Цитата ("MaratMaratMarat"):
Неужели для такой ситуации Вы пишите правила в css и создаете класс для этого?

Зависит от щедрости заказчика
Евгений Б.
5330 повідомлень
#14 років тому
Цитата ("superkoder"):
Даже для единичных элементов стоит использовать class.

??? есть логика + пожелания и стандарты верстки

Цитата ("MaratMaratMarat"):
К примеру, вот ситуация . Для обтекания img задается float: left прямо в html.
Я вот схожие ситуации имел ввиду. Помимо этого у картинки еще может и отступ быть, который не будет повтояртьяс у других картинок.

можно сделать класс для таких картинок, а если везде отступы разные - это ненормально. если "разные" - это 2-3 вида, то одно дело, а если на каждой странице кто как хочет, то в целом от стройного дизайна сайта остается полная фигня.
Я вообще за настройку визуального редактора только на стандартизированные стили и баста.
Антон В.
1807 повідомлень
#14 років тому
Цитата ("superkoder"):
Цитата (ArtPro):
2. классы для группы объектов, id для единичных. поиск по id в DOM быстрее

Даже для единичных элементов стоит использовать class.
id нужно использовать только для javascript


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

Цитата:
??? есть логика + пожелания и стандарты верстки


Какая такая логика говорит вам, что использование для текущего элемента id, а не класса, хоть что-то улучшит в вашей верстке? Не говорите ерунду. Чисто технически разницы ВООБЩЕ НЕТ. А вот ухудшить положение использование айдишника может...Соответственно, из двух зол выбираем меньшее.

Согласно абсолютно всем стандартам верстки, приветствуется использование классов. Использование айди ВОЗМОЖНО, но не более того.

Цитата ("MaratMaratMarat"):
По поводу первого пункта (вставка css в html). Имеется ввиду вставка style через аттрибут объекта html. К примеру, <img src = "some_iamge.png" style="margin-right: 30px" />
Неужели для такой ситуации Вы пишите правила в css и создаете класс для этого?


Лично я - да. Меня не убудет, а чистый html-код весьма нравится заказчикам и их программистам. Относится это не только к стилям в тегах, так же аккуратно надо вести табуляцию строк, не делать кучу пустых переносов строк, и так далее. Я с этим очень щепетилен, в итоге - я не комментирую код, вообще. Это просто не нужно, все и так ясно и понятно. Ни один заказчик еще не попросил внести комментарии.

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

Цитата:

3. Что лучше: cufon или font-face?


@font-face однозначно удобнее и правильнее, но из-за косяков в Опере использование пока ограничено. Если надо просто подменить пару заголовков, то я не морочу голову и юзаю Куфон.