J'ai un site Web (g-floors.eu) et je veux rendre l'arrière-plan (en CSS j'ai défini une image bg pour le contenu) également réactif. Malheureusement, je n'ai vraiment aucune idée de la façon de procéder, sauf une chose à laquelle je peux penser, mais c'est une solution de contournement. Créer plusieurs images puis utiliser la taille de l'écran CSS pour changer les images, mais je veux savoir s'il existe un moyen plus pratique d'y parvenir.
Fondamentalement, ce que je veux, c'est que l'image (avec le filigrane «G») se redimensionne automatiquement sans afficher moins de l'image. Si c'est possible bien sûr
lien: g-floors.eu
Code que j'ai jusqu'à présent (partie de contenu)
#content {
background-image: url('../images/bg.png');
background-repeat: no-repeat;
position: relative;
width: 85%;
height: 610px;
margin-left: auto;
margin-right: auto;
}
Réponses:
Si vous souhaitez que la même image soit mise à l'échelle en fonction de la taille de la fenêtre du navigateur:
Ne définissez pas la largeur, la hauteur ou les marges.
EDIT: La ligne précédente sur le fait de ne pas définir la largeur, la hauteur ou la marge fait référence à la question d'origine d'OP concernant la mise à l'échelle avec la taille de la fenêtre. Dans d'autres cas d'utilisation, vous pouvez définir la largeur / hauteur / marges si nécessaire.
la source
div
obtenir leur propre hauteur à partir de leur propre contenu, ou prendre l'espace disponible dans un modèle flexbox. Dire que sans largeur / hauteur explicite le conteneur ne s'affichera pas du tout est incorrect. De toute évidence, si vous souhaitez afficher une div vide avec une image d'arrière-plan, vous devrez définir la hauteur et, éventuellement, la largeur, mais vous ne verrez alors qu'une partie d'une image, sauf si le rapport d'aspect est exactement le même que celui de l'image elle-même.par ce code, votre image d'arrière-plan va au centre et fixe sa taille quel que soit le changement de taille de votre div, bon pour les petites, grandes et normales tailles, meilleur pour tous, je l'utilise pour mes projets où ma taille d'arrière-plan ou ma taille de div peut changer
la source
Essaye ça :
la source
CSS:
Cela devrait faire l'affaire! :)
la source
Voici le mixin sass pour l'image d'arrière-plan réactive que j'utilise. Cela fonctionne pour n'importe quel
block
élément. Bien sûr, la même chose peut fonctionner en CSS simple, vous n'aurez qu'à calculerpadding
manuellement.Exemple http://jsfiddle.net/XbEdW/1/
la source
C'est facile =)
Jetez un œil à la démo jsFiddle
la source
Voici le meilleur moyen que j'ai obtenu.
Vérifiez sur les w3schools
Plus d'options disponibles
la source
j'ai utilisé
qui a très bien fonctionné.
la source
la source
Site Web réactif en ajoutant un rembourrage à la hauteur / largeur de l'image inférieure x 100 = padding-bottom%:
http://www.outsidethebracket.com/responsive-web-design-fluid-background-images/
Méthode plus compliquée:
http://voormedia.com/blog/2012/11/responsive-background-images-with-fixed-or-fluid-aspect-ratios
Essayez de redimensionner l'arrière-plan eq Firefox Ctrl + M pour voir le script magique agréable, je pense que le meilleur:
http://www.minimit.com/demos/fullscreen-backgrounds-with-centered-content
la source
Vous pouvez l'utiliser. J'ai testé et son fonctionnement est 100% correct:
Vous pouvez tester votre site Web avec réactivité dans ce simulateur de taille d'écran: http://www.infobyip.com/testwebsiteresolution.php
Videz votre cache à chaque fois que vous apportez des modifications et je préférerais utiliser Firefox pour le tester.
Si vous souhaitez utiliser une image depuis un autre site / URL et que vous n'aimez pas:
background-image:url('../images/bg.png');
// Cette structure consiste à utiliser l'image de votre propre serveur hébergé. Ensuite, utilisez comme ceci:background-image: url(http://173.254.28.15/~brettedm/wp-content/uploads/Brett-Edmonds-Photography-14.jpg) ;
Prendre plaisir :)
la source
Si vous souhaitez que l'image entière s'affiche indépendamment du rapport d'aspect, essayez ceci:
Cela montrera l'image entière quelle que soit la taille de l'écran.
la source
la source
Juste deux lignes de code, cela fonctionne.
la source
Adaptatif pour le rapport carré avec jQuery
la source
ou
la source
Je pense que la meilleure façon de le faire est la suivante:
De cette façon, il n'est pas nécessaire de ne rien faire de plus et c'est assez simple.
Au moins, ça marche pour moi.
J'espère que ça aide.
la source
Essayez d'utiliser
background-size
mais en utilisant DEUX ARGUMENTS Un pour la largeur et l'autre pour la hauteurla source
la propriété position peut être utilisée pour aligner le haut en bas et le centre selon vos besoins et la taille de l'arrière-plan peut être utilisée pour le recadrage central (couverture) ou l'image complète (contenir ou 100%)
la source