L'elemento VML non viene visualizzato in modalità conforme agli standard rigorosi in Internet Explorer 9

Importante

L'applicazione desktop Internet Explorer 11 verrà ritirata e non sarà più disponibile per il supporto il 15 giugno 2022 (per un elenco degli elementi nell'ambito, vedere le domande frequenti). Le stesse app e gli stessi siti di Internet Explorer 11 che usi oggi possono essere aperti Microsoft Edge in modalità Internet Explorer. Altre informazioni sono disponibili qui.

Un elemento VML (Vector Markup Language) non viene visualizzato in modalità conforme agli standard rigorosi quando una pagina HTML usa l'elemento !DOCTYPE in Internet Explorer 9.

Versione originale del prodotto:   Internet Explorer 9
Numero KB originale:   932175

Risoluzione

Per risolvere questo problema, impostare lo stile VML display:inline-block su utilizzando il codice seguente:

vml\:* {
behavior: url(#default#VML);display:inline-block
}

Ulteriori informazioni

L'elemento VML viene visualizzato correttamente se si verificano le operazioni seguenti:

  • Non usare la modalità conforme agli standard rigorosi.
  • Rimuovere !DOCTYPE l'elemento.

Per ulteriori informazioni sulla modalità conforme agli standard rigorosi, vedere Doctype.

Per riprodurre il problema, utilizzare la pagina seguente:

<?xml version="1.1" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xml:lang="en"
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:vml="urn:schemas-microsoft-com:vml">
    <head>
        <title>VML Oval</title>
        <style type="text/css">
vml\:*
{
behavior: url(#default#VML);
}
</style>
    </head>
    <body>
        <h1>VML Oval</h1>
        <div>
            <vml:oval style="width:100pt;height:50pt" fillcolor="red"></vml:oval>
        </div>
    </body>
</html>