saya sudah
body {
background: url(images/background.svg);
}
Efek yang diinginkan adalah bahwa gambar latar belakang ini akan memiliki lebar sama dengan halaman, tinggi berubah untuk mempertahankan proporsi. mis. jika gambar aslinya berukuran 100 * 200 (unit apa saja) dan lebar badan 600px, gambar latar belakang harus setinggi 1200px. Ketinggian harus berubah secara otomatis jika ukuran jendela diubah. Apakah ini mungkin?
Saat ini, Firefox sepertinya membuat ketinggian pas dan kemudian menyesuaikan lebarnya. Apakah ini mungkin karena ketinggiannya adalah dimensi terpanjang dan ia berusaha menghindari tanam? Saya ingin memotong secara vertikal, lalu gulir: tidak ada pengulangan horizontal.
Juga, Chrome menempatkan gambar di tengah, tanpa pengulangan, bahkan ketika background-repeat:repeat
diberikan secara eksplisit, yang merupakan defaultnya.
html, body { height: 100%; }
membantu? Juga batuk .Jawaban:
Ada properti CSS3 untuk ini, yaitu
background-size
( pemeriksaan kompatibilitas ). Meskipun seseorang dapat menetapkan nilai panjang, biasanya digunakan dengan nilai khususcontain
dancover
. Dalam kasus spesifik Anda, Anda harus menggunakancover
:Eggsplanation untuk
contain
dancover
Maaf untuk permainan kata yang buruk, tapi saya akan menggunakan gambar hari ini oleh Biswarup Ganguly untuk demonstrasi. Katakanlah bahwa ini adalah layar Anda, dan area abu-abu berada di luar layar Anda yang terlihat. Untuk demonstrasi, saya akan mengasumsikan rasio 16x9.
Kami ingin menggunakan gambar hari itu sebagai latar belakang. Namun, kami memangkas gambar menjadi 4x3 karena beberapa alasan. Kami dapat mengatur
background-size
properti ke beberapa panjang tetap, tetapi kami akan fokus padacontain
dancover
. Perhatikan bahwa saya juga berasumsi bahwa kami tidak memotong lebar dan / atau tinggibody
.contain
Ini memastikan bahwa gambar latar belakang selalu benar-benar terkandung dalam area penentuan posisi latar belakang, namun, mungkin ada beberapa ruang kosong yang diisi dengan Anda
background-color
dalam hal ini:cover
Ini memastikan bahwa gambar latar belakang menutupi segalanya. Tidak akan terlihat
background-color
, namun tergantung pada rasio layar sebagian besar gambar Anda dapat terpotong:Demonstrasi dengan kode aktual
sumber
-webkit-
awalan?background-size: contain
contain
seperti zoom fit.cover
seperti mengisi zoom.contain
menyesuaikan ukuran gambar agar sesuai dengan dimensi yang lebih besar di antara lebar dan tinggi.cover
menyesuaikan ukuran gambar agar sesuai dengan dimensi yang lebih kecil di antara lebar dan tinggi.Berdasarkan tips dari https://developer.mozilla.org/en-US/docs/CSS/background-size Saya berakhir dengan resep berikut yang bekerja untuk saya
sumber
background-position: center;
, ini bekerja lebih baik bagi saya daripadabackgound-size: cover;
.overflow-y: hidden
bagian itu?Saya tidak yakin apa yang Anda cari sebenarnya, tetapi Anda benar-benar harus memeriksa posting blog yang sangat bagus ini yang ditulis oleh Chris Coyier dari CSS-Tricks:
http://css-tricks.com/how-to-resizeable-background-image/
http://css-tricks.com/perfect-full-page-background-image/
Baca deskripsi untuk masing-masing artikel dan lihat apakah itu yang Anda cari.
Yang pertama menjawab pertanyaan berikut:
Sasaran posting kedua adalah untuk mendapatkan yang berikut, "gambar latar belakang pada situs web yang mencakup seluruh jendela browser setiap saat."
Semoga ini membantu.
sumber
Gambar latar belakang tidak disetel Sempurna maka css-nya bermasalah buat jadi file css-nya berubah menjadi kode di bawah ini
%; ukuran latar belakang: 100% 100%; "
sumber
Coba ini,
sumber
Cukup tambahkan satu baris ini:
vh adalah tinggi viewport. Ini secara otomatis akan berskala agar sesuai dengan jendela browser perangkat.
Periksa lebih lanjut di sini: Buat div 100% ketinggian jendela browser
sumber
sumber
Saya memiliki masalah yang sama, tidak dapat mengubah ukuran gambar ketika menyesuaikan dimensi browser.
Kode Buruk:
Kode yang baik:
Kuncinya di sini adalah penambahan elemen ini -> ukuran latar: berisi;
sumber
Inilah yang bekerja untuk saya:
sumber
Pengaturan ukuran latar belakang tidak membantu, solusi berikut ini bekerja untuk saya:
Ini pada dasarnya memotong gambar dan membuatnya cocok,
background-size: contain/cover
masih tidak membuatnya cocok.sumber