Jeśli używasz zapytań o media, stosuj reguły tylko pod elementem body, który ma "responsywny".
@media screen and (max-width: 320px) {
body.responsive {
color: blue;
}
}
Jeśli użytkownik nie chce, aby zobaczyć reagujący układ, po prostu usunąć klasy „elastyczne” z elementem ciała, znoszący wszelkie zasady. Możesz zachować preferencje użytkowników za pomocą plików cookie lub innej metody.
Demo: http://jsbin.com/obaquq/edit#javascript,html
Zmniejszenie okna nie więcej niż 500px zamieni tekst bieli i niebieskim tle. Jest to uzależnione od tego, czy ciało ma klasę "responsywną". Kliknięcie pierwszego akapitu przełącza tę klasę, a tym samym przełącza efekty samego zapytania o media.
Jest to doskonała odpowiedź. Czy mówisz, że powinienem użyć czegoś takiego jak jQuery, aby sprawdzić, czy jest to urządzenie mobilne, a następnie dodać responsywną klasę? Czy może to zrobić w inny sposób? –
@NicHubbard Domyślnie uruchamiałbym się z responsywną stroną, co oznacza, że domyślnie ładowałem klasę 'responsive' na ciele. Ludzie rezygnują z elastycznego doświadczenia. – Sampson
@NicHubbard Następnie użyj zapytania mediów, aby wyświetlić tylko link "Pełna witryna" na mniejszych ekranach, link usuwa klasę "responsive" –