2012-12-12 22 views
5

margines Emisji
pracuję z bardzo dużych elementów blokowych (2000-4000px zarówno szerokość i wysokość), a większość z tych elementów przepełnić okno/rzutnię. To dobrze i jest zamierzonym efektem mojej aplikacji. Jednak, gdy nałożę margines na element ze wszystkich stron, powiedzmy 40 pikseli, zostanie on zastosowany tylko do górnego, lewego i dolnego boku. Po przewinięciu skrajna prawa krawędź jest wyrównana z krawędzią okna. Szukam równego marginesu na wszystkich stronach elementu bloku.Margin Problem z dużymi Blok Element

Kodeks
Zobacz poniżej lub view this jsFiddle obniżonej przypadku testowego.

<!-- HTML --> 

<div></div> 
/* CSS */ 

* { 
    margin: 0; 
    padding: 0;  
} 

div { 
    background: #000; 
    height: 3000px; 
    margin: 40px; 
    width: 3000px;  
}​ 

Co Próbowałem
Próbowałem powyższą metodę, którą początkowo zakładany będzie działać, ale tak się nie stało. Próbowałem również zastosować dopełnienie 40px do elementu body i całkowicie usunąć margines z div, ale uzyskałem taki sam wynik. To samo dotyczy elementu zawierającego z dopełnieniem.

Każda pomoc zostanie bardzo doceniona. Dzięki!

Odpowiedz

4

W jaki sposób uczynić z div element wbudowany blok.

Dodaj display:inline-block do swojego div i to powinno rozwiązać problem.

Zobacz zaktualizowane skrzypce-DEMO

+0

Idealne! Wiedziałem, że istnieje proste rozwiązanie. Dzięki za pomoc. – jackrugile

+1

W nieco przypadkowej notatce, jeśli chcesz, aby ta funkcjonalność działała ze starszymi wersjami IE, musisz zmienić divy na przęsła, ponieważ IE6-7 (i być może inne) nie pozwalają ci wprowadzać elementów blokowych do wbudowanych -Bloki. – andyface