Dans la documentation des requêtes multimédias Bootstrap 3, il est dit:
Nous utilisons les requêtes multimédias suivantes dans nos fichiers Less pour créer les points d'arrêt clés dans notre système de grille.
Appareils très petits (téléphones, moins de 768px): aucune requête multimédia car il s'agit de la valeur par défaut dans Bootstrap
Petits appareils (tablettes, 768px et plus):
@media (min-width: @screen-sm-min) { ... }
Appareils de taille moyenne (ordinateurs de bureau, 992 pixels et plus):
@media (min-width: @screen-md-min) { ... }
Grands appareils (grands ordinateurs de bureau, 1200 px et plus):
@media (min-width: @screen-lg-min) { ... }
Sommes - nous censés pouvoir utiliser les @screen-sm
, @screen-md
et les @screen-lg
noms dans nos requêtes des médias aussi bien? Parce que ça ne marche pas pour moi. Je dois utiliser des mesures de pixels comme @media (min-width: 768px) {...}
avant que cela fonctionne. Est-ce que je fais quelque chose de mal?
De plus, la référence à 480px pour les appareils très petits est-elle une faute de frappe? Cela ne devrait-il pas dire jusqu'à 767px? ( depuis retiré de la documentation )
Réponses:
Requêtes multimédias Bootstrap 4
Bootstrap 4 fournit le CSS source dans Sass que vous pouvez inclure via Sass Mixins:
Requêtes multimédias Bootstrap 3
Requêtes multimédias Bootstrap 2.3.2
Ressource de: https://scotch.io/quick-tips/default-sizes-for-twitter-bootstraps-media-queries
la source
Bootstrap ne documente pas très bien les requêtes multimédias. Ces variables
@screen-sm
,@screen-md
,@screen-lg
sont en fait référence à des variables moins et pas simple CSS.Lorsque vous personnalisez Bootstrap, vous pouvez modifier les points d'arrêt de la requête multimédia et lors de la compilation, les variables @ screen-xx sont remplacées par la largeur de pixel que vous avez définie comme screen-xx. C'est ainsi qu'un cadre comme celui-ci peut être codé une fois, puis personnalisé par l'utilisateur final pour répondre à ses besoins.
Une question similaire ici qui pourrait apporter plus de clarté: Requêtes multimédias Bootstrap 3.0
Dans votre CSS, vous devrez toujours utiliser des requêtes multimédias traditionnelles pour remplacer ou ajouter à ce que fait Bootstrap.
En ce qui concerne votre deuxième question, ce n’est pas une faute de frappe. Une fois que l'écran passe en dessous de 768 pixels, le cadre devient complètement fluide et se redimensionne à n'importe quelle largeur de périphérique, supprimant ainsi le besoin de points d'arrêt. Le point d'arrêt à 480px existe car des modifications spécifiques se produisent dans la mise en page pour l'optimisation mobile.
Pour voir cela en action, accédez à cet exemple sur leur site ( http://getbootstrap.com/examples/navbar-fixed-top/ ) et redimensionnez votre fenêtre pour voir comment elle traite la conception après 768px.
la source
Ce problème a été discuté dans https://github.com/twbs/bootstrap/issues/10203 À l'heure actuelle, il n'est pas prévu de changer Grid pour des raisons de compatibilité.
Vous pouvez obtenir Bootstrap à partir de cette fourche, branche
hs
: https://github.com/antespi/bootstrap/tree/hsCette branche vous donne un point d'arrêt supplémentaire à 480px, vous devez donc:
Concevoir d'abord le mobile est la clé pour comprendre Bootstrap 3. C'est le changement majeur par rapport à BootStrap 2.x. En tant que modèle de règle, vous pouvez suivre ceci (en MOINS):
la source
@screen-hs-min:@screen-xs;
. Pourquoi ne pas utiliser@screen-xs
directement ici?min-width: @screen-hs-min
, si vous avez besoin d'une règle estra pour SM, vous l'écrivezmin-width: @screen-sm-min
, et ainsi de suite. Ce fork est utilisé pour ajouter un nouveau point d'arrêt à 480px. Ensuite, la taille du mobile est inférieure à 480px et une nouvelle taille (HS) apparaît entre 480px et 768pxscreen-hs-min
est une nouvelle règle entrescreen-xs-min
etscreen-sm-min
Je sais que c'est un peu vieux, mais j'ai pensé que je contribuerais. En me basant sur la réponse de @Sophy, c'est ce que j'ai fait pour ajouter un point d'arrêt .xxs. Je n'ai pas pris en charge les classes visible-inline, table.visible, etc.
la source
.visible-xs-inline, .visible-xs-inline-block
chaque fois que vous remplacez.visible-xs
!La référence à 480px a été supprimée. Au lieu de cela, il dit:
Il n'y a pas de point d'arrêt en dessous de 768px dans Bootstrap 3.
Si vous souhaitez utiliser les
@screen-sm-min
mixins et d'autres, vous devez compiler avec LESS, voir http://getbootstrap.com/css/#grid-lessVoici un tutoriel sur l'utilisation de Bootstrap 3 et LESS: http://www.helloerik.com/bootstrap-3-less-workflow-tutorial
la source
Vous devriez pouvoir utiliser ces points d'arrêt si vous utilisez http://lesscss.org/ pour créer votre CSS.
Depuis https://getbootstrap.com/docs/3.4/css/#grid-media-queries
En fait,
@screen-sm-min
est une variable qui est remplacée par la valeur spécifiée_variable
lors de la construction avec Less. Si vous n'utilisez pas Less, vous pouvez remplacer cette variable par la valeur:Bootstrap 3 prend officiellement en charge Sass: https://github.com/twbs/bootstrap-sass . Si vous utilisez Sass (et vous devriez), la syntaxe est un peu différente.
la source
Voici les sélecteurs utilisés dans Bootstrap 4. Il n'y a pas de paramètre «le plus bas» dans BS4 car «très petit» est la valeur par défaut. C'est-à-dire que vous coderiez d'abord la taille XS, puis ces remplacements de média par la suite.
la source
lorsque j'utilise @media (max-width: 768px) ma conception se brise sur 768px. Mais c'est correct sur 767px et aussi sur 769px. Donc, je pense que la largeur maximale sera de 767 pixels pour cibler les petits appareils.
la source
pour bootstrap 3 j'ai le code suivant dans mon composant navbar
alors vous pouvez utiliser quelque chose comme
Cela utilise la valeur sur laquelle vous avez défini les variables.
L'échappement vous permet d'utiliser n'importe quelle chaîne arbitraire comme propriété ou valeur de variable. Tout ce qui se trouve à l'intérieur de ~ "n'importe quoi" ou de ~ "n'importe quoi" est utilisé tel quel sans aucun changement sauf l'interpolation.
http://lesscss.org
la source
la source