2011-01-26 2 views
8

Quando si va su YouTube, si dà un codice embed, comePerché YouTube ha inserito un attributo type = in iframe per i video incorporati?

<iframe title="YouTube video player" 
class="youtube-player" type="text/html" width="640" height="385" 
src="http://www.youtube.com/embed/QRvVzaQ6i8A?rel=0"> 
</iframe> 

Si noti che il

type="text/html" 

non è valido html. Non esiste un attributo simile per il tag iframe.

Qualcuno potrebbe spiegare perché Google ha messo questo? Immagino sia per qualche ragione pratica, ma non potevo indovinare cosa.

PS è possibile ottenere il codice embed andando qui http://www.youtube.com/watch?v=QRvVzaQ6i8A

+0

stupefacente. Sembra che Google abbia risolto il problema. Ora, non include più il tipo =. –

risposta

1

Credo che sia un errore da Google stesso. Sospetto un errore Non faceva parte di HTML4 e non fa parte di HTML5. Puoi tranquillamente ignorarlo e rimuoverlo.

sull'argomento type: Il type on the object element è conforme, ma obsoleto. Non è mai stato veramente usato dai browser per indovinare il contenuto dell'URI servito.

+0

bel collegamento. Tendo a concordare. Mi chiedo se qualche googler direbbe qualcosa al riguardo? –

2

Non è un errore, è il codice embed per il HTML5 Youtube Player.

Quando si tratta di validazione HTML, si deve ricordare che HTML5 permette al contenuto all'autore di utilizzare elementi non standard e gli attributi e il documento dovrebbe funzionare. Inoltre, il markup non standard che diventa abbastanza popolare può essere documentato e diventare un'estensione delle specifiche HTML5.

0

So che questo era da un po 'indietro, ma c'è una spiegazione utile da uno sviluppatore di YouTube qui: http://groups.google.com/group/youtube-api-gdata/browse_thread/thread/f492756804cd481a#msg_29fb6e74326f7a5c.

Insomma,

  • il 'tipo' e gli attributi 'classe' sono ormai passati

tuttavia, sono state aggiunte frameborder non standard e gli attributi allowFullScreen:

  • il 'frameborder = "0"' è per "certe versioni di IE" (potrebbe essere sostituito dal CSS se necessario?)
  • il ‘allowfullscreen' è per‘certi scenari di riproduzione Firefox HTML5’