Napisałem ten mniej rozwiązanie:
/* screens range */
@screen-s-max: 20em; /* 320px */
@screen-min: 20.063em; /* 321px */
@screen-max: 40em; /* 640px */
@screen-m-min: 40.063em; /* 641px */
@screen-m-max: 64em; /* 1024px */
@screen-l-min: 64.063em; /* 1025px */
@screen-l-max: 90em; /* 1440px */
@screen-xl-min: 90.063em; /* 1441px */
@screen-xl-max: 120em; /* 1920px */
@screen-xxl-min: 120.063em; /* 1921px */
/*
0----- smallmobile -----320----- mobile -----640----- tablet -----1024----- notebook -----1440----- desktop -----1920----- wide
*/
@onlyScreen: ~"only screen";
@smallmobile: ~"(max-width: @{screen-s-max})";
@mobile: ~"(min-width: @{screen-s-max}) and (max-width: @{screen-max})";
@tablet: ~"(min-width: @{screen-m-min}) and (max-width: @{screen-m-max})";
@notebook: ~"(min-width: @{screen-l-min}) and (max-width: @{screen-l-max})";
@desktop: ~"(min-width: @{screen-xl-min}) and (max-width: @{screen-xl-max})";
@wide: ~"(min-width: @{screen-xxl-min})";
@portrait: ~"(orientation:portrait)";
@landscape: ~"(orientation:landscape)";
@highdensity: ~"only screen and (-webkit-min-device-pixel-ratio: 1.5)",
~"only screen and (min--moz-device-pixel-ratio: 1.5)",
~"only screen and (-o-min-device-pixel-ratio: 3/2)",
~"only screen and (min-device-pixel-ratio: 1.5)";
@mobile-and-more: ~"(min-width: @{screen-min})";
@tablet-and-more: ~"(min-width: @{screen-m-min})";
@notebook-and-more: ~"(min-width: @{screen-l-min})";
@desktop-and-more: ~"(min-width: @{screen-xl-min})";
/*
syntax example
@media @onlyScreen and @tablet and @portrait , @notebook and @landscape, @mobile and @landscape{
body{
opacity: 0.8;
}
}
*/
Jak pokazano w przykładzie składni można połączyć wszystkie te mniej zmiennych i uzyskać złożone zapytanie o media. Użyj operatora "AND" dla operatora logicznego AND i przecinka dla operatora OR. Możesz łączyć różne rozdzielczości ekranu, orientację urządzenia (krajobraz/portret) i siatkówkę, a nie urządzenia.
Kod ten można także łatwo konfigurować, ponieważ umożliwia edytowanie/dodawanie/usuwanie wartości zakresu ekranów w celu zarządzania różnymi rozdzielczościami ekranu.
Zacznij od telefonu komórkowego, a następnie rozwiń okno, aż projekt się zepsuje lub wygląda źle, dodaj punkt przerwania ... powtórz. – justinavery
Mniej znaczy więcej: robię to w inny sposób, zaczynam od responsywnego opartego na procentach widoku pulpitu i dodawam wyjątki do telefonów i tabletów - zazwyczaj oznacza to po prostu podkręcanie siatki, na przykład stylizowanie wszystkich kolumn na pełną szerokość –