répétez les css de l'image de fond un certain nombre de fois
est-il un moyen de définir le nombre de fois qu'une image de fond se répète avec css?
Vous devez vous connecter pour publier un commentaire.
est-il un moyen de définir le nombre de fois qu'une image de fond se répète avec css?
Vous devez vous connecter pour publier un commentaire.
Un vilain hack pourrait être d'insérer plusieurs fois, de manière statique, la même image (à l'aide de des arrière-plans multiples):
E. g. Répéter horizontalement une image (80x80) trois fois:
Attention: ne fonctionne pas sur IE moins de 9 version (source).
pas.
vous pouvez définir une largeur absolue pour une boîte
mais il n'y a pas de css option pour répéter l'image n fois.
Vous pouvez combiner un peu de jQuery avec CSS pour réaliser ce que vous voulez.
Dites que vous voulez afficher l'image foo.png 3 fois horizontalement et 2 fois à la verticale.
CSS:
jQuery:
En outre, vous pouvez coller le même code à l'intérieur de $(window).redimensionner() pour obtenir une réponse dynamique.
Je ne suis pas sûr de ce qui a motivé cette question, mais je l'ai trouvé à la recherche d'un moyen de assurez-vous seulement d'un nombre entier de copies d'une image d'arrière-plan s'affiche (c'est à dire ne pas des cultures le dernier membre d'une nouvelle série d'images d'arrière-plan.) Qui peuvent être obtenus via le
background-repeat: space
propriété.Bien que n'étant pas strictement répétition d'une image x-nombre de fois, @gcbenison dit, vous pouvez utiliser le
background-repeat: space
de la propriété ou, de même, labackground-position: round
et de combiner l'une de ces avecbackground-size
pour assurer un nombre de répétitions pour une image d'arrière-plan sont affichés, et puis peut-être ajuster la taille de l'emballage pour les accueillir.Les deux
space
etrepeat
vais le répéter une image d'arrière-plan à l'infini tant que l'intégralité de l'image peut être affichée, mais pour le restespace
va ajouter un espace entre les images tout enround
permettra de redimensionner les images. Mis simplement, si l'image de fond s'adapte 3.342 fois verticalement puis les deuxspace
etround
montrera l'image 3 fois, avecspace
l'ajout d'un espace entre chaque image répétée, etround
de mise à l'échelle les images vers le haut (ou vers le bas, si nécessaire) afin de combler l'écart.Si vous voulez répéter une image 5 fois, chaque image étant à 20 pixels de large et espacées 5px entre, vous pourriez simplement faire ceci:
https://developer.mozilla.org/en-US/docs/Web/CSS/background-repeat
L'autre option (si vous ne pouvez pas définir la largeur) est l'utilisation de la solution de @franzlorenzon et il suffit de déclarer l'arrière-plan x-nombre de fois en utilisant le multiple d'arrière-plan d'une propriété CSS.
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Backgrounds_and_Borders/Using_multiple_backgrounds
En outre, vous pouvez enregistrer de taper plusieurs lignes à l'aide de SASS par la création d'un
@for
boucle comme ceci:Ce sera ensuite générer les images d'arrière-plan, tous uniformément espacées. En outre, n'hésitez pas à changer
($i * (100% /$image_count))
à($i * VALUE)
pour un espacement fixe.