2012-02-09 12 views
6

Mam tabeli, skonstruowaną tak:CSS wyściółka dla pojedynczego TD wewnątrz tabeli

<table> 
<tr> <td>1</td> <td>2</td> <td rowspan="4">3</td></tr> 
<tr> <td>4</td> <td>5</td>      </tr> 
<tr> <td>6</td> <td>7</td>      </tr> 
<tr> <td>8</td> <td>9</td>      </tr> 
<tr height="100"><td colspan="2">10</td><td class="eleven">11</td> </tr> 
</table> 

Teraz problem jest w ostatnim rzędzie. Cały rząd ma wysokość ustawioną na 100 pikseli, więc w TD jest dużo miejsca. W ostatniej TD Chcę ustawić indywidualny wyściółkę, więc tylko treść „11” napawa od góry:

.eleven { 
    padding-top:15px; 
} 

Ustawienie to powoduje problem - pierwszy TD w tym wierszu pojawia się również padding-top : 10 pikseli; Dlaczego i jak wykonać tylko drugi?

+2

Twój kod wydaje się działać http://jsfiddle.net/rdQvZ/. Jaki jest problem?? –

+0

możesz chcieć sprawdzić swoje css, inne kody css. Tabela i .eleven css jest ok. – XepterX

+0

Powinieneś stworzyć jsFiddle ilustrujący twój problem. Może również określić, w której przeglądarce występują te problemy? – kapa

Odpowiedz

6

Ok, dowiedziałem się, co spowodowało problem. Był to wpis w małym fragmencie html5-css-reset, którego używam:

vertical-align:baseline; 

przypisany ogólnie do większości wspólnych elementów. Mając to na uwadze, teraz wszystko działa zgodnie z oczekiwaniami.

8

Dlaczego nie chcesz zawinąć zawartości, która ma być wypełniona, do <div> (na którą chcesz zastosować styl wypełnienia) i wstawić tę <div> do <td>?

<td> 
    <div style="padding-top: 15px;"> 
     Content 
    </div> 
</td> 
+3

Ponieważ nie umieszczasz dodatkowych elementów div tam, gdzie ich nie potrzebujesz, a na pewno nie stosujesz stylowania liniowego dla takich elementów div. –

+6

Możesz umieścić div gdziekolwiek potrzebujesz, jego "podział". Właśnie podałem opcję wstawiania stylu, aby zachować prostotę, pokazać mu, jak można to zrobić za pomocą minimalnego kodu. Oczywiście wie, jak pisać klasy stylów, potrafi rozgryźć je. Div daje mu o wiele większą elastyczność w przyszłości. Co się stanie, jeśli przejdzie od projektowania opartego na stole do czegoś innego, Div może go zapewnić. –