Mam obraz tła w poniższym div, ale obraz zostaje obcięty:
<div style='text-align:center;background-image: url(/media/img_1_bg.jpg);background-repeat:no-repeat;width:450px;height:900px;' id="mainpage" align="center">
Czy istnieje sposób na pokazanie obrazu tła bez jego odcinania?
html
css
background-image
Rajeev
źródło
źródło
Odpowiedzi:
Możesz to osiągnąć za pomocą
background-size
właściwości, która jest teraz obsługiwana przez większość przeglądarek .Aby przeskalować obraz tła, aby zmieścił się w div:
Aby przeskalować obraz tła, aby objąć cały div:
Przykład JSFiddle
Istnieje również filtr do obsługi IE 5.5+ , a także prefiksy dostawców dla niektórych starszych przeglądarek .
źródło
Jeśli potrzebujesz obrazu, który ma te same wymiary div, myślę, że jest to najbardziej eleganckie rozwiązanie:
Jeśli nie, odpowiedź @grc jest najbardziej odpowiednia.
Źródło: http://www.w3schools.com/cssref/css3_pr_background-size.asp
źródło
Możesz użyć tych atrybutów:
i wtedy kod jest taki:
źródło
korzystasz również z tego:
Nie znam twoich wartości div, ale załóżmy, że je masz.
Ponownie, są to po prostu liczby losowe. Wykonanie obrazu w tle (jeśli chcesz) może być trudne ze stałą szerokością dla div, więc lepiej użyć max-width. I tak naprawdę wypełnienie div obrazem tła nie jest skomplikowane, po prostu upewnij się, że odpowiednio nadałeś styl elementowi nadrzędnemu, aby na obrazie było miejsce, w które mógłby wejść.
Chris
źródło
padding-top
.