Pull to refresh

Comments 52

Забавно сначала всех убеждали что w3c-шная модель лучше всех, а теперь рассказывают о новой суперфиче, которая на деле была в IE еще версии с 4-й.

Кстати для -webkit уже давно можно префикс не писать, только firefox до сих пор тупит, и никак не уберет префикс у box-sizing.
Вообще w3c-модель в этом плане хуже. Не понятно, зачем они её такой сделали, иногда мне кажется, что это сделано специально, вопреки MS.
Firefox все никак не поправит багу c min-height/max-height.
вот это, кстати, очень напрягает.
UFO just landed and posted this here
Он что, не знает, что с помощью этой фичи можно было бы изящно делать прибитый к низу футер?
Да ощущение, что разработчики с верстальщиками не пересекаются, добавляют какие-то бредовые свойства. А то что реально нужно обходят стороной. До сих пор, к примеру, толком нельзя вывести блок по центру страницы (по вертикали и горизонтали), без всяких костылей.
Особенно умиляют рассуждения, типа, что же правильнее писать тег B или STRONG, прям самая актуальная проблема.
Уже обсуждалось на Хабре не раз про нормальное позиционирование элементов. Все дружно ждем flex-box.
Да, я ничего так сильно не жду как Flexible Box Layout Module.
Это тот модуль который может в корне изменить стандартные приемы верстки, вот только ждать его ещё долго.
На самом деле, не так уж и долго — думаю, пара лет и дело в шляпе. Частичная поддержка уже есть во всех новейших браузерах, включая IE10 (но кроме Оперы пока что).

А фича — архиважная для нормальных лэйаутов.
Пример какой-то не очень удачный. Насколько я понимаю, основной смысл этого свойства в том, что размеры могут быть в разных единицах, например width: 30%, а border: 1px. Тогда действительно без box-sizing сложно.

А если всё в пикселах, то можно и заранее просчитать, ради такого не стали бы отдельное свойство вводить.
Согласен, чаще всего это свойство и спасает при использовании относительных значений… А зная точное количество пикселей, от этого свойства мало толку. имхо.
Это свойство позволяет избавиться от костылей в виде лишних div-контейнеров. Ну и естественно от лишних считаний избавляет. Вот понадобится где-то padding изменить, и давай за компанию меняй размеры блока…
А я что-то сказал против? Я просто сказал что ЧАЩЕ всего оно спасает при использовании относительных значений, в других случаях оно очень редко требуется. Я не знаю как верстаете ВЫ, возможно вы и лепите десять вложений дивов и вам оно и надо, мне такое очень редко требуется.

Я всегда стараюсь верстать с минимум вложений и с максимум использования CSS. Часто от вложений спасают псевдо-классы :after и :before возможно вы ими не пользуетесь, раз у вас так часто используются div-контейнеры.
Ну так псевдоклассы для подобного использовать это тоже костыли. Просто за годы уже так привыкли к подобному верстанию, что это кажется уже нормальным :)
Ну где же костыли то, эти псевдоклассы придают гибкость верстке, а гибкость это всегда хорошо. Чем меньше html тегов напичкано в страницу, тем проще оптимизировать страницу под любое разрешение/устройство/браузер… Так что я все же с вами не соглашусь с тем что это костыли. Вот пичкать страницу кучей контейнеров, это костыли. имхо.
Когда вам будет 82 года, вы, снимая штаны, грустно скажете своему маленькому другу: «ничего, гибкость это всегда хорошо». А в вёрстке гибкость должна достигаться минимальным количеством стилевых правил, вот тогда она хороша. А адский ад из кучи псевдоэлементов — в топку.
Не соглашусь. Вёрстка должна быть семантической, а не кашей из кучи вложенных блоков. Стили для того и нужны что бы оформлять… А не городить кучу вложенных контейнеров.
А я почти то же самое говорю, только я ещё за то, чтобы и в CSS меньше всяких обёрток и лишнего было.
Здесь вы противоречите сами себе, выше вы пишете что в топку псевдо и CSS в целом. То есть выше пишите что в CSS нужно писать минимум… А теперь пишите что вы якобы то же самое говорите… Не вижу равенства ваших мыслей.

А насчет минимум оберток в CSS я скажу так. Лучше сделать одну обертку в CSS чем лепить десяток в HTML. Хотя конечно если вы используете стили не для нескольких тегов а для одного один стиль, то конечно мусора в CSS будет море… Но если есть список элементов, допустим десяток и мне нужно их обернуть, каждый по отдельности, то я это сделаю через CSS нежели буду оборачивать каждый тег в HTML.

имхо.
Я нигде не писал про CSS в топку. Где вы такое прочитали?
А в вёрстке гибкость должна достигаться минимальным количеством стилевых правил

Тут вы четко даете понять что вы почти не пользуетесь CSS стилями раз вы их минимум делаете чем html тегов…

Выше я привел банальный пример в каких случая обертка в стилях хорошо, но вы судя по всему делаете как-то иначе.
У вас тут какое-то своё понимание моих слов. Где я тут вообще что-то написал про HTML? Я считаю, что надо стараться обходиться минимумом костылей где угодно.
ну извините, может проблема не в том что я плохо читаю, а в том что вы донести свою мысль не можете… Теперь вы уже заговорили об костылях, да еще и где угодно… Хотя ранее на это и намека не было… Перечитайте свои посты заново и проанализируйте есть ли там слова «Костыль», «Где Угодно». Возможно я просто ослеп и не вижу их.

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

А о псевдоклассах я выразил лишь частую ситуацию, когда нужно несколько элементов обрамить одним и тем же… То лучше это делать через псевдоклассы, написав одно правило, нежели совать каждый тег в свой контейнер.
А зачем так грубо? И почему вы сравниваете то чего нельзя сравнивать с тем о чем речь… Странное у вас представление о HTML, раз вы сравниваете свои промежности с HTML.

А насчет минимальности стилей, это вы загнули. Стили были придуманы не для того что бы ими не пользоваться. Во вторых перекладывая все в файлы стилей, вы увеличите скорость загрузки страницы, в третьих гибкость страницы, в четвертых исчезнет тот мусор в html который реально там не нужен, ну и в пятых если вам нравится разводить мусор в страницах пичкая куча тегов, это не говорит о том что это хорошо и так надо делать.
У нас общие промежности что ли? Я про ваши говорил. Не обижайтесь, это был искромётный юмор и всё такое :)

Конечно, стили были придуманы не для этого, но и не костылей в виде псевдоэлементов.
Вообще псевдоэлементы были придуманы не для подобного использования, а для вставки контента (хотя эта идея мне тоже не нравится по ряду причин). Потому это тоже костыль, вопрос лишь в том какой костыль лучше.
В том то и суть, что очень часто нужны относительные размеры в процентах или «em». Но даже при фиксированных размерах удобно указать относительные параметры и задавать только размер одного контейнера.
Правило без префикса следует писать последним.
Я, наверное, придираюсь, но если уж пишете о таком свойстве, можно было бы и про padding-box написать для полноты картины.
UFO just landed and posted this here
К сожалению, на спецификации в этом случае далеко не уедешь. Да и мне было бы интересно послушать, работает ли min-height и max-height с этим свойством. Всё-таки, это открывает простор для хаков. А теперь придётся самому читать, что замечательно, конечно.
С префиксами или без — эта штука уже давно повсеместно поддерживается и это круто. Спасает, если много относительных размеров. Для «тягучей» верстки самое оно. «border-box» — было бы здорово, если бы это значение было вообще по-умолчанию.
Вы не верстаете под IE7? Или есть способ запустить что-то похожее и там?
Не верстаем под IE7, все верно. Ну, область моей деятельности — это, прежде всего, интранет. Но даже для массового пользователя IE7 уже можно пренебречь или обойти другими способами.
или обойти другими способами.
А как? Я пробовал искать, нашёл пару expression-ов, но это, ИМХО, не вариант.
А, ну я и не имел в виду красивых решений. Да и смысл искать красивые решения под ископаемый браузер. JavaScript, conditional comments, хаки, просто не пытаться делать под IE7 идентично.

jReject как вариант :)
UFO just landed and posted this here
UFO just landed and posted this here
«border-box» — было бы здорово, если бы это значение было вообще по-умолчанию.

Можно переопределить поведение для всех элементов, но я бы так делать не стал)
UFO just landed and posted this here
Было бы здорово, если бы padding: 0;margin: 0; стояло везде по умолчанию
UFO just landed and posted this here
Автор, не забывайте про правильное применение свойств с префиксами в коде. Внимательно посмотрите презентацию и исправьте статью где необходимо, пожалуйста.
Подсказка: свойство без префикса пишется последним, чтобы у новых версий браузера была возможность выполнить самую последнюю реализацию этого свойства.
Sign up to leave a comment.

Articles