2013-08-09 2 views
-1

У меня возникли проблемы с моими медиа-запросами по какой-то причине.CSS сходит с ума

Вот что мой CSS выглядит

#main { 
    font-size: 16px; 
    font-size: 1.6rem; 
} 

Использование PHP, я даю класс моему HTML для каждого браузера в случае взлома, а именно для IE, например, так:

<?php 
    // ----| user agent (browser) |---------------------------- 
     $msie = strpos($_SERVER["HTTP_USER_AGENT"], 'MSIE') ? true : false; 
     $firefox = strpos($_SERVER["HTTP_USER_AGENT"], 'Firefox') ? true : false; 
     $safari = strpos($_SERVER["HTTP_USER_AGENT"], 'Safari') ? true : false; 
     $chrome = strpos($_SERVER["HTTP_USER_AGENT"], 'Chrome') ? true : false; 
?> 
<html class="<?php if($msie == true){ echo "msie "; } if($firefox == true){ echo "firefox "; } if($safari == true){ echo "safari "; } if($chrome == true){ echo "chrome "; } ?>" lang="fr"> 

проблема, для моего CSS работать, мне нужно вызвать класс HTML, например, так:

.firefox #main, 
.chrome #main, 
.safari #main, 
.msie #main { 
    font-size: 16px; 
    font-size: 1.6rem; 
} 

Любые идеи, почему это woul Да?

+0

Почему вы не установили класс (и CSS) для '' элемента вместо этого? – Powerslave

+1

В чем проблема? Я не вижу здесь медиа-запроса. – Chords

+1

Идеи относительно ** почему то, что ** будет происходить? – SmokeyPHP

ответ

9

Примечание: обнаружение агента пользователя немного отличается от «медиа-запросов».

https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries

Еще одно наблюдение: Я думаю, вы собираетесь добавить эти классы CSS к тэгу «тело», а не «HTML» тега.

Что касается вашего вопроса о IE хаков, ниже является большим ресурсом на «Как создать IE-всего» таблицу стили http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

+0

Перемещение класса в BODY, а не в тег HTML, как-то сделал трюк. Раньше у меня никогда не было этой проблемы, поэтому я и спросил. Что касается обнаружения версий IE, то у меня есть IE 7 и классы IE 8. IE9 и выше никогда не были проблемами. Наконец, используется UA, а также MQ. Я просто испортил их, по какой-то странной причине. TGIF, я думаю. – davewoodhall

+0

В качестве побочного примечания, ваш примерный селектор должен быть легче. Просто: '#main { font-size: 16px; Размер шрифта: 1,6 мм; } 'должно быть прекрасно. – aaronburrows

0

Ваш CSS имеет проблемы вы не должны использовать #main больше, чем когда-то в нем также, как упоминалось ранее HTML, должен быть тег

попробовать этот

<body class="<?php if($msie == true){ echo "msie "; } if($firefox == true){ echo "firefox "; } if($safari == true){ echo "safari "; } if($chrome == true){ echo "chrome "; } ?>" lang="fr"> 

CSS

.firefox, 
.chrome, 
.safari, 
.msie, 
#main { 
    font-size: 16px; 
    font-size: 1.6rem; 
} 
Смежные вопросы