2012-08-05 27 views
41

Obecnie mam problemy z ustawieniem tła obrazu dla mojej witryny, które będzie ładowane wystarczająco szybko. Użyłem obrazu adresu URL danych, a nawet zdjęć z optomizacją, ale trwa to długo podczas ładowania strony, ponieważ obraz w backgournd jest wciąż bardzo duży. Czy w CSS można stworzyć teksturowany kolor tła, jak na poniższym obrazku? tutaj jest EXAMPLECSS: Tworzenie tła z teksturą

próbuję go i nie były w stanie sprostać tym:

enter image description here

+0

Użyj kafelkowego obrazu tła, to jedyny sposób, aby uzyskać szczegółowe informacje. Zdecydowanie * nie * używaj URI typu "data:". Wygląda na to, że ten konkretny wzór można bezpiecznie powtórzyć w całkiem niewielkim rozmiarze, jeśli po prostu zmieni się teksturę, aby była taflowa. – Ryan

+0

Możesz łatwo [osiągnąć to za pomocą SVG i CSS] (https://stackoverflow.com/a/49108254) w około 400 bajtów. Jako bonus możesz dodać gradient prawie bez dodatkowych kosztów. –

Odpowiedz

67

z najnowszych technologii CSS3, możliwe jest stworzenie teksturą. Sprawdź to: http://lea.verou.me/css3patterns/#

ale nadal jest ograniczona pod wieloma względami. Obsługa przeglądarki również nie jest tak gotowa.

Najlepiej jest użyć małego obrazu tekstury i powtórzyć to tło. można dostać jakiś ładny gotowy do użycia tekstura zdjęcie tutaj:

http://subtlepatterns.com

+8

również http://patternify.com – albert

+1

Dziękujemy! właśnie tego szukałem! – CodingWonders90

+1

@albert, Nod 32 zablokowany ** patternify.com ** i mówi Strona znajduje się na liście stron z potencjalnie niebezpiecznymi treściami. – stom

17

Należy spróbować krojenie obraz, jeśli to możliwe w mniejszym kawałku, które mogą być powtarzane. Pokroiłem ten obraz na obraz 101x101px.

BG Tile

CSS:

body{ 
    background-image: url(SO_texture_bg.jpg); 
    background-repeat:repeat; 
} 

Jednak w niektórych przypadkach, nie bylibyśmy w stanie pokroić obraz na mniejszy. W takim przypadku użyłbym całego obrazu. Ale możesz również użyć metod CSS3, takich jak to, o czym wspomniał Mustafa Kamal.

Życzę powodzenia.

+0

Po prostu ciekawy, czy istnieje powód, dla którego wybrałeś 101 pikseli? Wygląda jak niestandardowy rozmiar i zastanawiam się, czy istnieje ku temu powód. –

1

Jeśli szukasz konwertera obrazu podstawowego 64, możesz zamieścić kilka małych plików tekstur obrazu jako kod w sekcji kodu @import url(''). Będzie wyglądać jak dużo kodu; ale przynajmniej wszystkie twoje dane są teraz przechowywane lokalnie - zamiast wywoływania oddzielnego zasobu, aby załadować obraz.

Przykład Link: http://www.base64-image.de/

Kiedy biorę plik z własnego ekwipunku prostego ikony w formacie PNG, i przekształcić ją w base-64, to wygląda to w moim CSS:

url('data:image/png;base64,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') 

Za pomocą obrazów tekstury będziesz chciał zastosować podobny proces.

1

Użyj edytora obrazów, aby wyciąć część tła, a następnie zastosuj właściwość CSS w tle-powtórz, aby mały obraz wypełnił obszar, w którym jest używany.

W niektórych przypadkach powtórzenie w tle tworzy szwy, w których obraz się powtarza. Rozwiązaniem jest użycie edytora obrazów w następujący sposób: począwszy od obrazu tła, kopiowanie obrazu, odwracanie (odbijanie lustrzane, nie obracanie) kopii od lewej do prawej, i wklejanie do prawej krawędzi oryginału, zachodzące na siebie 1 piksel . Przytnij, aby usunąć 1 piksel z prawej krawędzi połączonego obrazu. Teraz powtórz dla pionu: skopiuj połączony obraz, odwróć kopię od góry do dołu, wklej ją na spód połączonego, nakładającego się jednego piksela. Przytnij, aby usunąć 1 piksel od dołu. Powstały obraz powinien być bez szwu.