2016-07-11 4 views
2

Ich versuche ein Video in der Mitte einer Zelle mit fester Höhe so auszurichten, dass der Überlauf oben und unten ausgeblendet wird. UpWie wird ein Video in der Mitte einer Zelle vertikal ausgerichtet?

jetzt ich habe:

<table width="100%" border="0" cellspacing="0" cellpadding="0"> 
    <tr> 
    <td height="150" style="display: block; overflow: hidden; vertical-align: middle;"> 
    <div style="position: relative;"> 
     <video autoplay loop width="100%" style="display: block;"> 
     <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4"> 
     </video> 
    </div> 
    </td> 
    </tr> 
</table> 

jedoch den "vertical-align: middle;" in der "td" scheint nichts zu tun.

Ich suche nur die mittleren 150 Pixel zu sehen, aber zur Zeit ist es die Top-150 zeigt ...

Für alle, die helfen, sind in der Lage, einen Link zu meinem JSfiddle Beispiel: https://jsfiddle.net/xtxkm02a/1/

Danke.

+0

entfernen 'Anzeige: block' von Ihrem' td' und ein div mit Überlauf versteckt einzufügen. Mit 'display: block' haben Sie die' display: table-cell' überschrieben. – Phil

+0

Verwenden Sie nie Tabellen für das Layout, Tabellen sind nur für tabellarische Daten – Pete

Antwort

0

Hier ist der Code, zusätzlich zu meinem Kommentar.

table { 
 
    height: 300px; 
 
    border: 1px solid #000; 
 
} 
 
table td { 
 
    border: 1px solid #f00; 
 
    overflow: hidden; 
 
    vertical-align: middle; 
 
    height: 30px; 
 
} 
 
.video { 
 
    overflow: hidden; 
 
    height: 150px; 
 
} 
 
.video video { 
 
    width: 100%; 
 
    margin-top: -75px; 
 
}
<table width="100%" border="0" cellspacing="0" cellpadding="0"> 
 
    <tr> 
 
     <td valign="center" style=""> 
 
      <div class="video"> 
 
       <video loop> 
 
        <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4"> 
 
       </video> 
 
      </div> 
 
     </td> 
 
    </tr> 
 
</table>

+0

Phil, danke für einen Blick auf mein Problem. Ich habe Ihren Code ausprobiert, erhalte aber immer noch nicht das Ergebnis, nach dem ich suche. Wenn das Video geladen wird, zeigt es immer noch den oberen Teil des Frames an, ich kann es nicht bekommen, um mir den mittleren Teil des Videos zu zeigen. – Nalgeneo

+0

Meine Schuld. Ich habe die Frage nicht richtig gelesen. Ich habe meine Antwort aktualisiert und nun ist das Video zentriert. Sie benötigen eine Höhe am äußeren Teil und einen negativen Rand oben mit der äußeren Teilhöhe/2 – Phil