2013-08-21 28 views
5

Mam dwa divy, które ma obraz tła i chciałbym dodać margines do 2 div, ale tworzy on białe spacje.margines górny do div wewnątrz innego div

Jak dodać górny margines, pozostawiając element div wewnątrz innego elementu div?

<div class="background"> 
    <div class="logo"> 
    </div> 
</div> 

.logo { 
    background-image: url(image/logo2.png); 
    height:40px; 
    width:400px; 
    margin-left:100px; 
    display:block; 
    margin-top:20px; 
} 

.background { 
    background-image: url(image/empback.png); 
    width:100%; 
    height:94px; 
    min-width:1345px; 
} 
+2

Powinieneś rzucić okiem na odpowiedź 'Mr.Alien's'. –

Odpowiedz

5

Można dokonać wykorzystanie cssposition nieruchomości tutaj.

Przykładowy kod

<div class="background"> 
    <div class="logo"> 
    </div> 
</div> 

.logo 
{ 
    background-image: url(image/logo2.png); 
    height:40px; 
    width:400px; 
    margin-left:100px; 
    display:block; 
    position:absolute; 
    top:20px; 
} 

.background 
{ 
    background-image: url(image/empback.png); 
    width:100%; 
    height:94px; 
    min-width:1345px; 
    position:relative; 
} 

usunąć margin-top:20px; i dodać position i top nieruchomość za .logo.

+0

doskonały. Dzięki. Przyjmę po pewnym czasie. – amdvb

+0

+1 dla Ciebie ..... –

+1

@DipeshParmar Niesamowite i dzięki. Ładnie działało. – webblover

11

Można użyć overflow: auto na elemencie macierzystym

.background{ 
    background: #f00; 
    width:100%; 
    height:94px; 
    min-width:1345px; 
    overflow: auto; 
} 

Demo

Właśnie link do share co wiąże się z tym problemem.


Również lepsze podejście to zamiast używać position: absolute; należy użyć position: relative; z top, left, right i bottom właściwości, które nie tylko utrzymać element w obrocie, będzie to również zaoszczędzić od pozycjonowania inne elementy w tym samym bloku.

Demo 2

+0

Czy masz jakieś uwagi na temat sprawy? –

+0

@ RokoC.Buljan Chciałbym zobaczyć, czy to ma jakąkolwiek złą stronę, zwykle idę na względną rzecz absolutną, ale to rozwiązanie działa również ... –

+2

otrzymałeś ode mnie +1, ustawiając pozycję absolutną dla dziecka w nie zawsze pożądane. Dobry połów –

2

Just Go poprzez kod.

Zmieniając pozycję i najwyższą wartość, możemy uzyskać wynik.

.logo{ 
position:relative; 
top:10px; 
background-color:black; 
height:40px; 
width:400px; 
margin-left:100px; 
display:block; 
margin-top:20px; 
} 

.background{ 
    position:absolute; 
    background-color:green; 
width:100%; 
    top:50px; 
height:94px; 
    min-width:1345px; 
} 
Powiązane problemy