@ Media min-width & max-width
у меня есть это @media
настройка:
HTML-код:
<head>
<meta name="viewport" content="width=device-width, user-scalable=no" />
</head>
в CSS:
@media screen and (min-width: 769px) {
/* STYLES HERE */
}
@media screen and (min-device-width: 481px) and (max-device-width: 768px) {
/* STYLES HERE */
}
@media only screen and (max-device-width: 480px) {
/* STYLES HERE */
}
С этой настройкой он работает на iPhone, но он не работает в браузере.
это потому что у меня уже есть device
В мета, и, может быть,?
3 ответов
Я нашел лучший метод-написать CSS по умолчанию для старых браузеров, как старые браузеры, включая, например, 5.5, 6, 7 и 8. Не удается прочитать @media. Когда я использую @media, я использую его так:
<style type="text/css">
/* default styles here for older browsers.
I tend to go for a 600px - 960px width max but using percentages
*/
@media only screen and (min-width:960px){
/* styles for browsers larger than 960px; */
}
@media only screen and (min-width:1440px){
/* styles for browsers larger than 1440px; */
}
@media only screen and (min-width:2000px){
/* for sumo sized (mac) screens */
}
@media only screen and (max-device-width:480px){
/* styles for mobile browsers smaller than 480px; (iPhone) */
}
@media only screen and (device-width:768px){
/* default iPad screens */
}
/* different techniques for iPad screening */
@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait) {
/* For portrait layouts only */
}
@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:landscape) {
/* For landscape layouts only */
}
</style>
но вы можете делать все, что хотите с @media, это просто пример того, что я нашел лучше всего для меня при создании стилей для всех браузеров.
также! Если вы ищете printability, то вы можете использовать @media print{}
основная проблема заключается в использовании max-device-width
vs plain old max-width
.
использование ключевого слова "устройство" нацелено на физический размер экрана, а не на ширину окна браузера.
например:
@media only screen and (max-device-width: 480px) {
/* STYLES HERE for DEVICES with physical max-screen width of 480px */
}
и
@media only screen and (max-width: 480px) {
/* STYLES HERE for BROWSER WINDOWS with a max-width of 480px.
This will work on desktops when the window is narrowed. */
}
правильное значение content
атрибут должен включать initial-scale
вместо:
<meta name="viewport" content="width=device-width, initial-scale=1">
^^^^^^^^^^^^^^^