Ich muss ein wiederholendes Hintergrundraster mit CSS ausgeben.Verwenden von CSS-Hintergrundbild zum Ausgeben von Raster mit Farbverlauf mit Offset
Ich habe es geschafft, die repeating-linear-gradient() Funktion zu verwenden, um so zu tun, und es wird angezeigt groß:
Dann aber ich brauche von 100px das Gitter auf der horizontalen Achse zu verschieben.
I background-position Eigenschaft hinzugefügt haben, dies zu tun:
Aber am Ende, es gibt mir ein seltsames Ergebnis. Einige äußere vertikale Linie ist gezeichnet.
Interessanterweise ist diese Zeile auf dem Computerbildschirm fixiert. Wenn Sie also die Größe des Fensters ändern, sehen Sie, dass sich diese Zeile nicht mitbewegt. I've recorded a video to demonstrate.
Warum passiert es genau und wie begegne ich diesem Verhalten?
Gibt es eine alternative Möglichkeit, ein solches Raster um den Offset verschoben zu zeichnen?
.
Und hier ist der Code Ich verwende:
:root {
--background-grid-color: deeppink;
--background-fill-color: #000;
}
html, body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
body {
/* Vertical lines */
background-color: var(--background-fill-color);
background-image:
repeating-linear-gradient(
to right,
var(--background-grid-color) 0,
var(--background-grid-color) 1px,
transparent 1px,
transparent 200px
),
repeating-linear-gradient(
to bottom,
var(--background-grid-color) 0,
var(--background-grid-color) 1px,
transparent 1px,
transparent 200px
)
;
background-position: 100px 0, 0 0;
}
In diesem Fall die 'Wiederholung linear-gradient' genau einmal wiederholt. Warum nicht 'linear-gradient' verwenden? –
Ja, Sie haben recht, das ist eine großartige Optimierung. Deshalb habe ich deine Antwort akzeptiert. Ich habe gerade meine Antwort zur gleichen Zeit gepostet. –