2009-09-09 9 views
5


wyściółka góra i dno inline elementu

Cytat Head First HTML:

Możesz dodać dopełnienie do górnej i dolnej części elementu inline, ale wyściółka nie wpływa na odstęp między innymi elementami wbudowanymi wokół niej, tak wyściółka będzie nakładać się na inne elementy wbudowane

a) w miarę jak zrozumienia powyższy cytat, dodając dopełnienie do górnej i dolnej części elementu nie inline (zawsze) mieć jakiekolwiek efekty na okolicznych elementach, a tym samym na wyglądzie strony ?!

b) Ale co dokładnie ma oznaczać "wypełnienie będzie nakładać się na inne elementy śródliniowe"? Czy to może sugerować, że w pewnych okolicznościach wyściółka (góra i dół elementu liniowego) wpłynie na wygląd strony ?!


thanx

Odpowiedz

6

Jeśli dobrze rozumiem, i od example Zrobiłem:

a) tekst jest elementem inline, tak mi dodanie dużej rozpiętości, z górnej i dolnej wyściółką nie przesuwa innych linii w dół

b) jak widać, ponieważ dodałem kolor do przęsła, kolor będzie nakładał się na inne linie.

Mam nadzieję, że jest to zarówno w prawo, a odpowiedzi na swoje pytanie: D

+1

Dziwne, kolor tła (żółty) elementu śródliniowego nie ukrywa tekstu na linii poniżej elementu, podczas gdy ukrywa tekst na linii powyżej elementu. Czemu? – SourceC

+1

@SourceC: Tyle nie mogę odpowiedzieć :(Zgaduję, że to prawdopodobnie zmienia się z przeglądarki na przeglądarkę, ale ja tego nie zweryfikowałem – theIV

+1

To maluje tekst od początku do końca, więc maluje pierwszą linię , następnie żółte tło dla elementu śródliniowego, który nadpisuje pierwszy wiersz z powodu dopełnienia, następnie czarny tekst specjalnego elementu wbudowanego, a następnie następujące linie: – fret

1

Wyściółka będzie wpływać na sam element. Na przykład dowolny tekst w elemencie będzie bardziej wypełniony innymi elementami DOM.

+0

Co to są elementy DOM? – SourceC

+1

Elementy modelu obiektu dokumentu. Zasadniczo dowolny tag HTML. –

+0

nie będzie wstawiany element tylko wyściełany z elementów po lewej i prawej stronie, ale nie z elementów na górze lub pod nim? – SourceC

2

Spróbuj tego:

<style type="text/css"> 
    div { background: blue; height: 4em; padding: 1em } 
    span { background: red; padding: .5em; } 
</style> 

<div> 
    <span>one</span> 
    <br/> 
    <span>two</span> 
</div> 
13

Użyj inline-block zamiast. Dodaj te właściwości do wszystkich elementów, do których chcesz dodać dopełnienie. Na przykład:

a:link { 
display: inline-block; 
display: -moz-inline-box; 
-moz-box-orient: vertical; 
vertical-align: top; 
zoom: 1; 
*display: inline; 
} 
+0

Co oznacza '*' przed ostatnim wyświetleniem? ale w każdym razie działa bardzo dobrze. – radbyx