2015-06-30 4 views
0

Часто, когда я делаю веб-сайты, я получаю невероятное разочарование, пытаясь сделать некоторые вещи с помощью CSS, и гораздо проще использовать JQuery для добавления стилей CSS.Использование JQuery для создания стилей CSS

Например, попытка вертикального выравнивания divs является кошмаром в CSS, поэтому я обычно использую JQuery для определения высоты родителя и добавления соответствующего верхнего края для дочернего элемента.

Мой вопрос ко всем вам умным, опытным кодерам (в отличие от меня) ... Это плохая практика? Нужно ли мне преодолевать трудности позиционирования CSS или я могу просто продолжать использовать JQuery для добавления определенных стилей?

+0

Если возможно, используйте 'CSS' если нет, то вы должны использовать '$ .css()' – Tushar

+0

, вы можете сделать это таким образом, но вы являетесь f Первый человек, которого я когда-либо слышал, кто такой CSS, сложнее, чем JS: D, каковы ваши проблемы с css? это почти «нормальный» HTML – messerbill

+0

Подобно вам до 2-3 лет назад я также использовал 'jquery' для определенных вещей. Но всегда пытайтесь решить некоторые вещи с помощью 'CSS', если это невозможно, используйте только' javascript' или 'jquery'. – Amit

ответ

4

Если это выполнимо только с помощью CSS, это, как правило, лучше практика:

  • уважает разделение проблем (CSS должен быть ответственным за визуальные эффекты), как правило, будет более ремонтопригодны по той же причине (вы будете знать, что вы должны смотреть в CSS код, когда что-то выглядит не так)
  • этих решений будут быстрее Whan большинства того, что вы можете достичь с помощью JavaScript
  • в большинстве случаев он также будет быть более пуленепробиваемым решением. Я обнаружил, что если я пытаюсь сделать что-то «умное» с помощью JavaScript и макетов, я часто забываю о некоторых странных условиях, и ошибки, которые появляются в результатах, действительно неприятны.

Также, в общем, подумайте об этом так: CSS является одним из основных слоев вашего веб-приложения. Так или иначе, вам нужно будет знать, что там происходит (и было бы оптимально также знать , почему), поэтому чем более свободно с CSS вы станете лучше.

Я действительно рекомендую https://css-tricks.com/ для любого уровня CSS подмастерья (я вновь их Guide To Flexbox каждые несколько дней: D)

0

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

В качестве практического примера я бы сказал, что хорошей практикой в ​​этом случае было бы использование простого и эффективного решения, такого как this, а затем использовать что-то вроде Modernizr для применения наименее трудоемкого решения (то есть вашего собственного) как резерв для меньшинства старых браузеров.

0

Может быть, вы можете сказать, что это плохая практика, потому что jQuery (.CSS()) займет больше времени, чем вы сделали, используя только стили CSS

так, как я узнал, я буду говорить, что сделать работу с заданным приоритетом для решения проблемы я думаю, что было бы

пытаются решить с помощью HTML >>> (если не решена) пытаются решить с помощью CSS >>> (до сих пор не решена) идти с JQuery

это то, что я думал, что

Смежные вопросы