2015-08-24 6 views
1

Это, наверное, довольно просто, но я не могу понять, что это или найти ответ.Переписывание правил CSS

У меня есть HTML элемент <div class="box">

Этот элемент имеет набор правил в оригинальном стиле листа:

.box { 
width: 40%; 
} 

Я использую CSS лист Выборочная, которая перезаписывает исходный таблицы стилей, не касаясь его.

мне нужно изменить это правило:

.box { 
max-width: 40%; 
} 

Так в основном, как я могу добавить это новое правило, но отменить старый ??

Это может быть что-то типа? :

.box { 
width: 0; 
max-width: 40%; 
} 

??

+1

И в [интересное чтение] (http://www.456bereastreet.com/archive/201112/the_difference_between_widthauto_and_width100/). –

+0

Ширина по умолчанию DIV составляет 100%. Исходный CSS устанавливает его ширину до 40%, и ваш CSS хочет ограничить максимальную ширину до 40%. По умолчанию div всегда будет заполнять столько ширины, сколько может. В вашем случае это будет по умолчанию 40% ширины, если вы явно не устанавливаете ширину меньше. – Eraph

ответ

2

Вы можете установить автоматическую (по умолчанию) ширину. Ширина со значением auto указывает браузеру рассчитать ширину, основанную на других свойствах, ограничивающих элемент.

.box { 
    width: auto; 
    max-width: 40%; 
} 
2

Чтобы сбросить ширину, что было бы по умолчанию, установите значение auto. Таким образом, ваши правила CSS перезаписи будет:

width: auto; 
max-width: 40%; 

Если вы установите ширину 0, то ваша коробка не будет даже дисплей. Максимальная ширина - это то, на что это похоже - самый широкий элемент может быть, но он также может быть любой ширины меньше. Таким образом, установка максимальной ширины 40px, но ширина 0px приведет к тому, что элемент будет иметь ширину 0px.

+0

Отлично, это работает, спасибо огромное ... еще один быстрый вопрос .. мог ли я установить значение «min-width: 40%» и «max-width: 40%» в одно и то же время? На данный момент div не переходит на 40% на мобильном телефоне, это то, что я хотел, но теперь он растягивается более чем на 40% на более крупном устройстве, потому что я удалил набор 'width: 40%', так что бы я был способный ограничить максимальное растяжение, добавив дополнительную 'max-width: 40%'? –

+0

просто попытался, но, похоже, не работает таким образом. –

+0

@JoeBloggs Если вам нужны разные значения «max-width» для разных размеров экрана, я бы посмотрел [CSS-запросы] (https: // developer. mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries). Вы также можете использовать 'max-width' с пиксельным значением вместо процента, если это работает для вашего прецедента. –

0

Обычно правила CSS работают так, как указано в каскадном режиме, поэтому вы можете сделать другой .box в другом файле, а затем связать этот файл с документом, но помните, чтобы правило применять новый документ должно быть к которому нужно привязать.

Также вы можете попробовать в том же CSS документ что-то вроде этого:

.box { 
max-width: 40% /*Change this value to the one you want*/ 
}