Хорошие курские сайты
Я уж и не думал, что когда-нибудь напишу такое, но это случилось. Это замечательно, что в Курске стали делать хорошие сайты. Один из них совершенно случайно обнаружил сегодня. Авторы — студия BRIGHTSIDE. Разумеется, львиную долю положительных эмоций вызывают хорошие фотографии и без них ресурс выглядел бы не так впечатляюще. Очевидно, что сайт ещё есть куда совершенствовать, но это пока лучшее, что я видел из местных сайтов.
Приятно также, что при работе над этим сайтом ребята попытались освоить такую непростую вещь для провинциального технолога, как БЭМ. Однозначно, с обеих сторон беспрецедентная работа. Внутри прошу поделиться ссылками на другие хорошие курские сайты, которые вам понравились.
126 комментариев
Domain ID:D129246-PRO
Domain Name:BRIGHTSIDE.PRO
Created On:27-Jan-2012 05:07:56 UTC
Last Updated On:29-Jul-2013 14:30:01 UTC
Expiration Date:27-Jan-2015 00:00:00 UTC
Sponsoring Registrar:Regional Network Information Center JSC dba RU-CENTER (R2369-PRO)
Status:CLIENT TRANSFER PROHIBITED
Registrant ID:J1ILQO7-RU1
Registrant Name:Fedor Danilov
Registrant Organization:Fedor Danilov
Registrant Street1:Pavlunovskogo, 7-108
Registrant Street2:
Registrant Street3:
Registrant City:Kursk
Registrant State/Province:Kurskaya obl.
Registrant Postal Code:305016
Registrant Country:RU
Registrant Phone:+7.9202600597
Интересно, что по этому портфолио можно проследить, как его хозяин осваивал профессию и развивал свои навыки.
И да, я бы с удовольствием заимела себе такой «халат», а еще пальто и юбку и свитшот и шарф и в, общем-то, практически все, что есть на сайте.
Насчет моды и пидоров — это так убого, что я даже комментировать не буду.
Касательно вещей — мне все очень нравится. Чистый крой, простые линии, цвета и фактуры тканей — все как я люблю. Немного напоминает эстетику бренда Celine всяко мною уважаемого.
В общем, это отличный стартап во всех смыслах, имхо. Ира молодец и далеко пойдет, у нее прекрасный вкус.
И не видел ты ещё праздничных цен.
и хорошо что не видел, моя неустойчивая психика может не выдержать, если я это увижу
Мне стало интересно почему Eye like it, а глаза у всех моделей и логотипа закрыты?
В остальном: нарисовано с любовью к тому, что рисовали. А вот сверстано без души.
А верстал seligoroff небось, хе-хе.
Классы элементов «main-menu head__main-menu» не преведены к общему виду, что не критично, ведь все работает, но в cssе неудобно до жути разбираться с такими вещами.
Горизонтальная навигация сверстана не списком ссылок, как было бы логично и элегантно (читайте «стандартно»), а коллекцией divов с ссылками в каждом.
Это немного нелогично для меня и моего понимания верстки.
Элементы текста тоже сверстаны divами c class=«text__h1» или class=«text__p». Без комментариев.
Лезть в css я не стал. Я полагаю, что часть контента генерирует некая CMS. Но если я ошибаюсь, то это грустно.
И да, не удержался и потыкал в формы на www.eyelikeit.ru/contact/. То ли они срабатывают при пустых полях, то ли просто отдают неверное сообщение.
Правильно, что не стал. Их генерирует какой-нибудь Борщик+Сеточка+что_то_еще.
> Элементы текста тоже сверстаны divами c class=«text__h1» или class=«text__p». Без комментариев.
Не шаришь, Михон. Это как раз БЭМ во всей своей красе :)
> Горизонтальная навигация сверстана не списком ссылок, как было бы логично и элегантно
Тут смею не согласиться. Семантики в ul > li для навигации нет. Это все старые привычки.
У любого HTML-документа есть три смысловых уровня, составляющих его семантическую основу. Первым, важнейшим уровнем является использование элементов в соответствии с их предназначением, описанным в спецификации. Второй уровень — именование с помощью атрибутов классов и идентификаторов, которые более детально описывают содержательную и функциональную роль элементов. Продолжением и развитием второго уровня является третий, устанавливающий смысловые связи между отдельными элементами.
Если на втором уровне именование отдано на откуп разработчика и отражает его внутреннюю культуру написания кода, то третий уровень имеет строгие соглашения. Разработчики поисковых сервисов рекомендуют создавать семантически выверенные документы (яндекс, гугл) для наилучшего их ранжирования.
Исходя из сказанного можно заключить, что сплошное использование элементов DIV и классы вида «text__p» лишают документ необходимых смысловых связей. Можно сколь угодно обсуждать аспекты, имеющие отношение к культуре кода, но в данном случае семантика имеет и вполне практическое значение, которое может вылиться в дополнительные расходы на поисковую оптимизацию.
Это утверждение может быть верным в единственном частном случае, когда навигация представляет собой только один уровень. Оптимальным решением здесь может быть помещение группы ссылок, элементов A, в контейнер NAV. В других ситуациях, как, например, на сайте eyelikeit.ru, когда навигация отражает сложную внутреннюю структуру сайта, следует использовать вложенные неупорядоченные списки. Эти списки раскрывают иерархические связи между отдельными документами, в этом и заключается семантическая роль элементов UL и LI в представлении навигации.
С другой стороны, никто Вам, разумеется, не мешает так поступать, потому что, как известно, «семантика-шмемантика» (опять же, лишь бы документ был корректен). В данном конкретном случае моя позиция объясняется методологическим редукционизмом: если ul > li, то придется убирать маркеры и отступы, а потом, есть контент, возвращать их.
Что, кстати, возвращает нас к БЭМ. Сама методология вполне себе сносная, за исключением так называемого «достраивания классов»:
И кстати тут тоже ничего военного нет, просто лично мне не очень нравится, когда одно и то же повторяется несколько раз без веских причин.
А вообще главное — это баланс. Что касается веб-разработки, Вы имеете полное право наплевать на любую рекомендацию и методологию, если:
1. это не вредит корректности
2. от этого не страдают Ваши клиенты (в т.ч. браузеры и поисковые роботы)
3. Вам нравится, как это получается изнутри
Идиотами же, как правило, люди выставляют себя сами — достаточно влезть со своим экспертным мнением в область, в которой ничего не понимаешь. Так что и доказывать нужды нет ;)
Прям вот с языка снял ;) Молодцом!
Рад, что мы все обсудили :)
Мне кажется он не понял одной простой вещи — здесь нет врагов, никто не собирается отнимать у вас кусок хлеба. Любая критика полезна. Даже в такой интересной форме как здесь :)
А оправдываться не следует, я же сказал, что не держу на вас зла. Извинения ваши мы приняли еще в прошлом году :)
Не припомню чтобы я извинялся. Все что было сказано, было сказано по-существу. Даже если это не так, то обижаться на субъективную точку зрения потому что она субъективна как-то глупо.
Это я так воспринял извиняющийся тон в твоих попытки выдать свои потоки мыслей за полезную критику нашего проекта.
Слушай, я вообще не понимаю, о чем идет речь. Может, повторишь компактно суть своих претензий, чтобы было, о чем разговаривать?
Ок, только хотелось бы услышать адекватный ответ.
Называть сервис работающий на одном сервере, с одним ip адресом, на одном канале одного провайдера облачным не совсем корректно. Лепить ярлыки «облако» и «SaaS» на любой сервис в интернетах свойственно безмозглым специалистам по маркетингу, но никак не технически подкованным людям к коим ты несомненно относишься. Существует мнение, что облачный сервис должен быть как минимум отказоустойчивым и высокодоступным. Когда я задал вопрос об отказоустойчивости и времени даунтайма сервиса в случае выхода из строя одного из элементов вашего «облака», Стас начал мне задвигать про мультидоменные схемы и предложил ознакомиться с техническими характеристиками балансировщика нагрузки. Ты случайно не знаешь зачем? Я вот не знаю. И мне кажется, что он просто не понимает о чем идет речь. Так же мне непонятно причем тут SaaS. Возможно я бы понял, но о программном обеспечении savant.pro нам тоже никто не рассказал. Сам сервис может быть сто раз охуенным, а код может быть тысячу раз гениальным (я об этом судить не могу, поскольку сам не разбираюсь, а твой коллега ни слова не сказал о функционале), но об элементарных вещах вы не думаете. Если то, что запущено сейчас лишь пилот — да, вопросов нет. Но если проект уже запущен в продакшн, то все грустно. Если нет своих специалистов, почему не привлечь чужих? Или арендовать чужую инфраструктуру в нормальном дата-центре?
Это не так. 8 узлов, 2 физические машины для серверов приложений, один франтэнд, один бэкенд. В рамках текущей нагрузки эта конфигурация отвечает всем потребностям (даже с большим запасом).
Это также временное решение, нашим клиентам вполне хватает. Само решение готово и к шардингу, и к HA-кластерам в разных датацентрах. Делать это мы будем, исходя из экономической эффективности, а не чтобы ты «разрешил» нам использовать термин «облако». Извини, если тебя это задевает.
Т.е. ты сейчас говоришь как маркетолог? Можно посмотреть на отчет о твоей самой успешной маркетинговой кампании? Почему я должен тебе доверять в этом вопросе?
Я консультировался с юристом по поводу слова «облако». Его мы использовать можем, это не запрещено законодательством. В виду отсутствия каких-либо технических спецификаций облачные вычисления и, в частности, облачные программные продукты, нам также не запрещает это делать инженерная этика. Опять же, мне очень жаль, если это тебя как-то задевает, мы не хотели никого обидеть.
Здесь ты опять про один IP-адрес?
Разумеется, знаю. Самой сложной задачей при построении решения было обеспечение отказоустойчивости на уровне серверов приложений — с сохранением высокой скорости получения наиболее приоритетных данных (учебного контента). Эта задача у нас решена, и именно этот аспект делает решение высокотехнологичным (подробности опустим, поскольку, твоими же словами, судить ты все равно не можешь).
Остается самое первое звено цепочки — балансировка нагрузки, именно поэтому «Стас начал мне задвигать про мультидоменные схемы и предложил ознакомиться с техническими характеристиками балансировщика нагрузки».
При том, что SAVANT.PRO — это SaaS платформа. Софт как услуга. Multi-tenant система с полностью ограниченными друг от друга образовательными порталами в рамках одной среды. Что здесь может быть непонятного?
Вот теперь внимание. Оказывается, твои претензии — то, что ты позиционируешь, как критику — было сделаны без малейшей попытки анализа предмета. Блестящее признание под конец, браво :)
Думаем. Все в порядке.
Мне не грустно, мне хорошо. Моим коллегам тоже. Клиентам тоже. Почему тебе грустно?
Меня терзают смутные сомнения… Не является ли твой этюд завуалированной рекламой — чтобы мы обратились за помощью к тебе?
Мы подумаем над этим, когда нас перестанет устраивать текущий.
С вами был Борис Окунский,
Спасибо за внимание!
Это стандартная конфигурация обычного шаред-хостинга за пятьдесят рублей в месяц. Никому ведь не приходит в голову установленный на нём мультисайтовый WP называть Multitenant SaaS платформой.
Чем ваш сайт отличается от мультисайтовой инсталляции WP? Тоже Multitenant. Из чего следует, что это SaaS платформа? На сайте лично я не увидел ни условий аренды, ни списка довольных клиентов ни даже внятного описания платформы. Подробностей об архитектуре нет, только отрывочные весьма скупые сведения.
Чего им хватает? Одного канала? А что будет
есликогда ляжет?Ну насчет этого сомнений нет. Я вот готов к колонизации Марса и еще ко многим великим делам. Как минимум морально :)
Разумно. Однако это говорит о том, что пока экономической эффективности не хватает даже на аренду второго канала и нормального дата-центра. Впрочем вы ведь даже за один канал и колокейшн (если вдруг оборудование ваше) не платите, так ведь? Все это в купе с невысокими потребностями ваших клиентов, говорит о том, что это пилот, а не сервис работающий в продуктивной среде. А раз так, то, как я уже говорил — вопросов нет.
А я вам ничего не запрещал. Я попросту не могу этого сделать. Я лишь указал не некорректность использования этого термина в данной ситуации.
И нет, не задевает, продолжай.
Нет, не как маркетолог, а как технический специалист. А вообще считаю что маркетолог это вообще западло, а не профессия. Соответственно никаких отчетов о моих успешных маркетинговых кампаниях ты посмотреть не можешь. Доверять ты мне совершенно не должен.
Это настолько прекрасно, что нет слов.
Нет, здесь я про отказоустойчивость и высокую доступность. Опять.
Это прекрасно. Но ведь я и не говорил не об архитектуре программного обеспечения, не так ли?
О балансировке речь я вообще не заводил — это просто и очевидно, поскольку есть куча готовых решений.
Нет, об этом он завел речь в ответ на вопрос об отказоустойчивости и высокой доступности. Хотя как вам поможет балансировщик если у вас ляжет весь один канал ума не приложу. В хороших автомобилях должны быть АБС и подушки безопасности, но тебе вместо них эксперт из автосалона предлагает поставить вместо них охуительнейшую мигалку. Оно-то да — с мигалкой ездить быстрее и комфортнее, но сомнительно что она сможет обеспечить безопасность во время аварии.
Здесь все непонятно. Что такое SAVANT.PRO? Это такая система доставки контента? Если это не одно приложение, а как ты говоришь, платформа, то не уместнее ли говорить о Platform as a Service?
Да ну. Ты умышленно пытаешься подменить предмет или действительно не понимаешь о чем идет речь? Я говорил об убогой инфраструктуре, а не о качестве вашего программного обеспечения. Про программное обеспечение мне тоже было бы интересно послушать, но уже не с профессиональной точки зрения, а так, из чисто академического интереса.
Все ок, ты меня уже повеселил.
Напрасно терзают. Ни в коем случае. Я кажется уже где-то писал почему это невозможно.
То есть
когдаесли за него начнут просить денег? :)Хорошего отдыха, ребята :)
1. Нет, это была не ирония.
2. О проекте и так достаточно поговорили. Комментировать экспоненциально нарастающие блочные цитаты у меня нет времени, к тому же «преимущества конкретно Вашей критики для меня неочевидны» (простите за перефраз в кавычках).
3. Как программисты Вы себя, ребята, уже показали в предыдущем треде, когда нашли якобы ошибку в рекламном объявлении. Как методологи — когда обвинили в быдлокодерстве всех, кто использует div с классами (включая инженеров Яндекса, роботов БЭМ, и вообще «подавляющее большинство разработчиков»). Как маркетологи вообще отказались от каких-либо комментариев. И так далее. Извините — и я действительно никого не пытаюсь сейчас задеть — но я не вижу особой пользы для себя и для своих проектов от общения с Вами здесь и в такой форме. В конечном счете я просто сижу и трачу время — один из немногих по-настоящему невосполнимых ресурсов — просто на кучку троллей.
Если есть желание, можете продолжать обсуждения проектов, убогих архитектур, ненадежных инфраструктур, семантики и быдлокода (в общем, кому что ближе) — только без меня. Я вам даже картинку оставлю на прощание: иерархическую навигацию со Stackoverflow (может Джоэла сюда пригласите?)
Искренне и от всего сердца желаю Вам всем удачи и профессиональных успехов!
P.S. На правах рекламы: приходите к нам работать, ребята. Зарплата стажерам от 20000 рублей, NodeJS, Redis, хороший менеджмент, дружелюбный коллектив — и никакого быдлокода. От Вас — хорошее знание JavaScript, умение решать задачи, желание учиться и стремление создавать хорошие программные продукты. Контакты в объявлении на пл. Перекальского, можете также прислать свое резюме лично мне (мои контакты на GitHub).
Интересно другое: ты рассматриваешь всех, кто здесь высказывался, как троллей-провокаторов, не понимая, либо не желая понять, откуда и почему возникают неудобные для тебя вопросы. У меня не укладывается в голове, как это возможно — потратить столько времени и сил на коммерческий продукт, который вы позиционируете как уникальный и при этом быть не в состоянии ответить на простые вопросы о его внутренней организации.
То, что вы рассказали о вашем проекте, выглядит не как рассказ, а как отмашки от назойливых мух. SAVANT.PRO в данный момент более похож на мистификацию, чем на коммерческий продукт.
Извините, но именно так Вы себя и позиционируете. Мне доводилось участвовать в намного более обстоятельных беседах. Это конкретно общение я прекращаю из-за высокомерного тона, который не оправдан и ничем не подтвержден (ни одного Вашего проекта Вы не показали).
Вот в чем Вы действительно преуспели — так это в наклеивании ярлыков.
и даже ранее
При этом субъективность собственных высказываний, которые Вы позиционируете как аксиомы, Вы отрицаете. Не люблю голословие, поэтому простой пример:
Группа навигационных ссылков видится так Вам, потому что Вы привыкли ее так видеть. Но здесь Ваша собственная догматичность и выступает против Вас. Семантика — как Вы сами и отмечали — это теория смысловых связях между элементами. Таким образом, группа навигационных ссылок — это группа навигационных ссылок, а не список (а то с таким же успехом список можно видеть в списке слов в предложении, или букв в слове). Само слово «список» же в данном контексте легко заменяется синонимом «последовательность», а в этом случае это всего лишь последовательность элементов a, следующих друг за другом. У такого подхода ровно столько же семантики, сколько и у ul > li > a + a — потому что сам смысл от этого не изменяется — зато меньше разметки и меньше CSSов (и отсутствие необходимости в reset'ах).
Любая работа субъективна в принципе. Любую последовательность можно видеть списком, а можно нет (иерархичность тут вообще не при чем, уже обсудили). Снова привожу доказательство:
Все еще недостаточно аргументов? Давайте дальше.
Смысловые связи, да? И у какого же элемента это сделать? Дать третьему свойство border-bottom — или четвертому border-top? А чем вообще эти элементы «провинились», что Вы их помечать будете? У презентационных целей ведь тоже есть причины, и я как раз призывал Вас подумать о «смысле» разделителя: разделять ли список «физически» (т.е. на два списка) или сделать разделитель частью общего списка.
А вот Вам еще про пустые элементы и семантику ссылчка. Приятно, что не весь мир разделяет Вам абсолютизм.
Теперь кикер: должна быть причина, по которой один человек называет другого быдлокодером за то, что тот просто выбрал один из равноценных вариантов сделать свою работу. Предлагаю Вам самостоятельно ее для себя определить: я Вас все равно лично не знаю, Ваши мотивы мне неинтересны, а право судить мне вообще никто не давал.
Как я уже отмечал, самоутверждение — это вполне нормально. Продолжайте, если это Вам помогает. Но вот делать «удивленное лицо», притворяться, будто стремитесь помочь — а не публично облить грязью, и включать дружелюбных филантропов не имеет смысла: любой здравомыслящий человек в этой беседе увидит нападающих и защищающихся.
Я нигде не писал, что пустые элементы вредят семантике, ты просто додумал это за меня. Вот мои слова:
Что такое бритва Оккама ты знаешь сам.
То, что тебе показалось субъективным, было подкреплено объективными аргументами. Если они тебе неясны либо ты считаешь их ошибочными, ты всегда можешь их опровергнуть, а не пускаться в рассуждения кто на кого напал и кто кого оскорбил.
К слову, «быдлокод» оскорблением не является, это просто собирательный термин, объединяющий то, что за рубежом называют enterprise css, enterprise html и т. д.
О списках я напишу отдельный комментарий, чтобы вынести рациональную дискуссию из потока эмоций.
У меня порациональнее предложение. Может, каждый все-таки при своем останется? Вот у Вас есть причины менять свою истину на другую — только потому что она существует? И у меня их нет. Как говорится, «давайте хватит» :)
Тут своих пидорасов хватает:)Как-то очень бюджетненько. Не то чтобы шило на мыло, но близко к тому.
Ну в общем-то можно было сразу сказать «идите нахуй» и не тратить свое драгоценное время. Какая разница, все равно ведь к этому и пришли.
Не знаю, какие ниточки я задел своим присутствием на Вашем информационном ресурсе, но мне надоело вас успокаивать. Понимайте как хотите.
Сделанные мною выводы, в том числе и об оптимизации, имеют отношение ко всему сайту в целом, а не только к навигации. Напомню также, что элемент div согласно спецификации является одним из немногих элементов, не имеющих семантического значения.
Возможно, я изложил свои мысли слишком академично и затейливо, поэтому поясню прямым текстом: третий уровень семантики имеет отношение к микроформатам, важность которых для продающего сайта переоценить сложно. А первый уровень имеет отношение к структуре документа (заголовок/контент и т. д.), о влиянии заголовков H1 на положение сайта в поисковой выдаче известно даже начинающим.
Те, кто работает с программистами, могли слышать от них ёмкое словечко «быдлокод». Как ни странно, быдлокод встречается в HTML и CSS и, безусловно, своим авторам он весьма нравится, в отличие от всех остальных. Эти аргументы я слышал более десяти лет назад, когда пропагандировалось написание валидного HTML-кода и надо признать, в этом контексте они были справедливыми. Но в контексте семантики это является либо подменой понятий, либо признаком непонимания предмета.
Я часто встречаю программистов, которые блестяще владеют традиционными языками, с которыми работают постоянно, но при этом парадоксальным образом не понимают основ HTML и CSS. Именно по этой причине в последние годы в веб-разработке из развилась отдельная профессия — фронтенд-разработчик, в которую перешли наиболее квалицифированные верстальщики и технологи.
Если такое писать руками, то имеет смысл Ваше высказывание про «быдлокод». Если же это делают роботы, то имеет смысл говорить только о внутренней организации — как у них устроены шаблоны, элементы, блоки и все остальное.
А еще, концепцией семантики многие просто злоупотребляют. По сути о ней вообще можно говорить только когда речь идет о контенте, о содержимом, о том, что пишу я, что пишите Вы, что пишут все остальные. Если Вы пишете текст, то элементы определяют смысловые связи (абзац, заголовок, список — т. е. Ваш первый уровень семантики). Если же речь касается навигации, ul > li дает ровно столько же смысловых связей, сколько дадут .btn-group > .btn из всеми любимого bootstrap.
P. S. Против микроформатов я ничего не имею, они как раз попадают в #2.
Обвинить код (разметку, CSSы) в недостаточной семантичности — это в большинстве случаев попытаться добавить веса к своей субъективной неприязни. Вот простой пример: мне не нравится слово «morda» в семантике второго уровня от Яндекса — и вообще бесит русский транслит в коде. Но это не значит, что я имею право объявить авторов в «жестком и циничном» © презрении к семантики или называть их быдлокодерами.
Разумеется, про «text__p» я молчу, но подобные вещи можно объяснить без привлечения пространных речей про смысловые связи — только спецификацией HTML и методологическим принципом «Бритвы Оккама».
А вот про ul > li в навигации я готов спорить дальше :)
… говорить, что быдлокодером был автор шаблона или робота-сборщика
Могу я узнать, где в этой спецификации говорится о соглашениях в части именования классов? Я уже упоминал, что моё пространное выступление о смысловых связях было посвящено всем аспектам этого документа, часть из которых зритель вполне мог и не заметить.
Можете. Про соглашения об именах классов Вы сами придумали.
Ладно, достаточно лирики. Есть убедительные доводы, что если я не использую ul > li в навигации, то я быдлокодер? Если нет, то давайте оставим схоластику.
Убедительный довод содержится в спецификации в части, описывающей предназначение элементов списка. Я вижу допустимым игнорировать это в случае, если навигация не является многоуровневой, оставляя при этом только лишь элемент A с целью исключения избыточности. В случае, если навигация иерархична, то её реализация с помощью любых элементов, кроме UL > LI либо DL > DT/DD является ничем иным, как использованием выбранных тобой элементов не по назначению.
Вопреки твоему мнению о субъективности оценки «быдлокод» она имеет вполне объективное выражение. Качественный код должен обладать, среди прочих свойств, логичностью, предсказуемостью и соответствием общепринятым стандартам. В HTML таким стандартом является спецификация, предписывающая использовать элементы в соответствии с их предназначением.
В случае, если есть абсолютная уверенность, что с кодом никогда не придётся работать никому иному, кроме как его автору, любая объективная оценка теряет смысл.
Исходя из сказанного предлагаю тебе самостоятельно определить, применимо ли к твоему HTML слово «быдлокод». Справедливости ради, стоит заметить, что это слово в той или иной степени применимо к результатам труда большинства специалистов и идеальный со всех сторон код встречается крайне редко.
В отличие от языков программирования, из-за исторического разнообразия поддерживаемых платформ язык разметки гипертекста позволяет свободно обращаться с предписаниями стандартов (а там, где не позволяет, это даёт возможность делать его реализация в большинстве браузеров), что может создать ошибочное о допустимости любых вольностей, покуда они сохраняют работоспособность.
По ссылке Вы пояснение того, что я имел в виду в этом абзаце:
Т. е. div.text__p не следует использовать, т. к. спецификация определяет для этой конкретной цели элемент p. Причем тут соглашения об именовании классов?
Далее.
Давайте посмотрим сюда и найдем этот довод вместе.
Давайте посмотрим туда же и еще вот сюда. Не вижу подтверждение Вашего довода про многоуровневость.
Зато есть у меня довод против ul > li. Давайте, раз уж мы тут все такие о расширяемости и качестве говорим, представим себе следующее развитие событий. В процессе существования проекта появилась необходимость добавить заголовок к каждому уровню поднавигации в иерархии, а к нему — описательный текст, т.е. перед каждым ul теперь нужно добавить заглавие (например, категорию). Какие элементы вы выберете? h1? h2? h3? h6? p? Или все-таки сделаете div.title и div.subtitle и, тем самым, «предадите» свой первый уровень семантики (от безысходности)?
Давайте еще один вариант рассмотрим. В рамках одного уровня навигации появилась необходимость отделить три первых элемента от двух нижних горизонтальной чертой. Как Вы поступите? Сделаете два списка и hr между ними? Или сделаете пустой li.separator по середине?
Если Вы утверждаете, что в каком-то из случаев вы будете быдлокодером, а в другом останетесь Д'Артаньяном, то у Вас просто недостаточно зрелая позиция. Видимо, Вам все еще нужно верить во что-то большое, грандиозное и великое (да-да, в семантику как в Дао), чтобы создавать. Я не в праве Вас осуждать, потому что я был таким же. Думаю, все специалисты проходят период крайней догматичности.
Хорошим показателем зрелости, как правило, служит умеренность в суждениях. Я вот, например, еще два-три года назад обожал покритиковать чужой код. Самоутверждение — это вообще нормально. Но превозносить себя на пьедестал объективности — это уже гордыня.
Как, впрочем, и вот это:
Не вполне уверен, что правильно понял суть явно взятой с потолка задачи. Мне видится, что здесь уместно использовать DL.
Для этого у одному из элементов списка следует назначить свойство border и не плодить пустых элементов исключительно для презентационных целей.
Остальное, представляет собой твои личные домыслы и фантазии. Особенно смешной и нелепой частью в них выглядит попытка на пустом месте утвердить собственное превосходство
У моей догматичности есть вполне очевидные и достаточные причины, говорить о которых я не стану, дабы ещё более не ущемлять твоё самолюбие.
* наращивание вложенности CSS-селекторов и
* наращивать имена классов (тогда селекторы становятся простыми, но мы получаем эти длинные классы).
Ребята для себя выбрали второй путь. Лично я для себя выбираю первый (не знаю, как вы). А правильного вообще не существует :)
Недостатком .class1 .class2 .class3 являются возможные проблемы с наследованием и повторным использованием кода.
Составные имена .class1.class2.class3 лишены таких недостатков, но тут появляется соблазн использования исключительно презентационных классов, что можно увидеть в бутстрапе. Такая практика означает возврат в девяностые, когда вовсю использовались презентационные элементы FONT. Как и у прочих вариантов, у него есть свой недостаток — более объёмный код. На практике незначительный рост объёма не имеет существенного значения, поскольку этот код кэшируется после первой загрузки. Главная выгода этого варианта — полная независимость логических блоков документа.
Есть и альтернативный вариант селекторов .class1__class3, к которым, по мере надобности может применяться глобальный модификатор .context .class1__class3. Преимущества этого варианта — наивысшее быстродействие в repaint и reflow и меньший объём кода. Возможно, в будущем БЭМ придёт к третьему варианту, но ещё в прошлом году в личной беседе его авторы сообщали, что пока на будущее таких планов нет.
Поскольку критерии целесообразности различны не только для разных сайтов, но и для разных коллективов и даже конкретных специалистов, постоянно решающих определённые задачи в процессе работы, каждый выбирает оптимальный подход или комбинации отдельных методов самостоятельно. Правильный выбор позволяет решать производственные задачи в максимально короткий срок и подразумевает наименьшие затраты на сопровождение готового решения, если таковое необходимо.
Вот видите, тут Вы все правильно говорите. А человек со стороны придет, посмотрит на Ваш код, не увидит там привычных ему конструкций и вынесет свой резкий и безапелляционный вердикт: «ТРЕВОГА, БЫДЛОКОДЕРЫ!» И по факту будет две стороны: люди, добившиеся успеха, и злобный неудовлетворенный критик.
А вот это:
— Ваше ограничивающее убеждение, как говорят психологи.
Ага, nice try. Отличная иллюзия того, что я могу что-то Вам доказать.
Верьте в то, что Вам помогает лучше творить, создавать, писать, любить и спать по ночам. С наступающим Вас Рождеством Христовым!
Борис, я же не за семантику радею. Я за то, чтобы было очевидно и понятно.
Этот конкретный сайт я воспринимаю как чей-то эксперимент в попытке освоить БЭМ, не более того.
Цены нормальные — стоит учитывать, что это штучные работы, а не фабричное изготовление.
Логично, что при таком концепте марки и стоимости изделий они ориентированы на москвичей и питерцев. Поэтому, наверное, и сайт более стильный, чем то, к чему привыкли в Курске.
Кому интересно, могут пройти по ссылке и прочесть подробнее.
второйтак может :)Из рецензии следует, что были отмечены наиболее очевидные недостатки, которые может заметить даже неспециалист. При этом вопросы, связанные с композиционной частью (графические рифмы, соотношение размера блоков, интерлиньяжа и отступов и др.) были опущены.