@media
запросы не меняют специфику.Совсем.Они просто применяют код или игнорируют его, в зависимости от предоставленного условия.
Следовательно, ваш код преобразуется в:
#div1 { display: inline-block;}
#div1 { display: none; }
ниже width: 300px
и в
#div1 { display: none; }
над ним.
Вам нужно поставить последний символ @media
, если специфичность селекторов остается прежней.
#div1 { display: none; }
@media (max-width: 300px){
#div1 { display: inline-block;}
}
<div>
Some content 1
</div>
<div id="div1">
Some Content 2 - only visible up to max-width:300px
</div>
<div>
Some content 3
</div>