Просто потребность добавить пространство:
.area2 .item
{
...
}
Использовать внешний CSS для статических определений. Используйте поиск по идентификатору элемента и атрибут style для вещей, которые меняются во время выполнения или где вам нужен Javascript для настройки, потому что CSS не поддерживает то, что вы хотите.
Хорошим примером последнего было использование полос зебры в jQuery до широкой поддержки селекторов CSS 3 :
$(document).ready = function() {
$("table tr:nth-child(even)").addClass("striped");
});
Сегодня вы можете сделать это в статическом CSS, но когда-то давным-давно, использование Javascript было лучшим вариантом.
Я использую внешние таблицы стилей, и причины этого следующие:
Я попытался придумать причины использования атрибутов стиля, но честно говоря, я могу сказать, что использую его только тогда, когда мне лень открыть таблицу стилей, чтобы что-то быстро изменить (я не слишком горжусь этой частью, поэтому стараюсь минимизировать ее)
Одним из больших преимуществ перемещения всех ваших стилей в таблицу стилей является ремонтопригодность. Поиск встроенных стилей может быть огромной проблемой для других людей, пытающихся поддерживать ваш код.
Уже по этой причине стоит назначить конкретному элементу идентификатор и определить его стили в таблице стилей.
Во-вторых, если вы обнаружите если вы пишете много встроенных стилей, вы, вероятно, могли бы выделить больше этих стилей, используя свойства наследования CSS или несколько хорошо продуманных классов в дополнение к идентификатору.
С точки зрения производительности выбор идентификатора выполняется так же быстро, как и CSS , поэтому использование большого количества классов на самом деле медленнее, чем переход по идентификаторам, даже если это всего лишь микросекунды.