2012-06-07 2 views
0

Я создал jsfiddle http://jsfiddle.net/zkLav/, показывая код в действии. происходит то, что изображения и выравнивание текста являются ступенчатыми и не выравниваются по вертикали. Может ли кто-нибудь объяснить, почему это происходит?css вертикальное выравнивание, странный результат

CSS разметки:

.outList { 
    display:table; 
} 
.outList span { 
    display:table-cell; 
    vertical-align:middle; 
    width:10%; 
} 
.outList h4 { 
    display:table-cell; 
    vertical-align:middle; 
    width:50%; 
    padding-left: 10px; 
} 
.outList p { 
    float:right; 
    display:table-cell; 
    vertical-align:middle; 
    /*width:30%;*/ 
    text-align:right; 
} 
.outList img { 
    width:100%; 
} 

HTML разметки:

<ul> 
    <li data-theme="c"> 
    <a href="detail.html"> 
     <div class="outList"> 
      <span><img src="simgs/listview_chk.png" /></span> 
      <h4>Warmup</h4> 
      <p>5 Minutes</p> 
     </div>        
    </a>     
    </li> 

    <li data-theme="c"> 
    <a href="detail.html"> 
     <div class="outList"> 
      <span><img src="simgs/listview_chk.png" /></span> 
      <h4>Machine Press</h4> 
      <p>3 sets of</p> 
     </div>        
    </a>     
    </li> 

    <li data-theme="c"> 
    <a href="detail.html"> 
     <div class="outList"> 
      <span><img src="simgs/listview_chk.png" /></span> 
      <h4>Lateral Pulldowns</h4> 
      <p>3 sets of</p> 
     </div>        
    </a>     
    </li> 
</ul>​ 
​ 

Правильный образ задачи:

enter image description here

+0

Ваш jsFiddle нуждается в некоторой работе. – j08691

ответ

2

Хорошо, посмотрим на this update

Просто удалите ширину в следующем классе .css:

.outList img { 
    width: 100%; 
} 

UPDATE

для текста на право быть полностью выравнивать , удалите float:right; от p класс:

.outList p { 
    float:right; 
    display:table-cell; 
    vertical-align:middle; 
    /*width:30%;*/ 
    text-align:right; 
} 

Check this new update

+0

спасибо, что текст на конце не вертикально выравнивается. Вы также можете увидеть это в jsfiddle. Любая идея о том, как я могу это исправить? – acctman

+0

проверить мое обновление ответа – Luis

0

Избавьтесь от divs, вам они не нужны, если у вас есть лики.

Кроме того, зачем охватывать img? Избавься от этого тоже.


Когда вы сделали это, поставить ул как таблицы, Ли в качестве строк, а затем вещи в а, как и столбцы.