Pergunta

Fui pesquisar por um tempo para uma tag DOCTYPE que fará com que o Internet Explorer compatível com padrões para css com um documento normal xml, como eu quero usar o atributo css-espaço em branco. Esta página estados que usando o "doctype 'XML'" deve ser suficiente para o Internet explorer 6+ para vir através - Mas eu tentei cada tag DOCTYPE que eu poderia pensar / encontrar em exemplos, sem obter os resultados esperados. Talvez eu estou faltando alguma coisa aqui, mas basicamente eu acho que a tag DOCTYPE direita (no lugar certo no código) deve fazê-lo.

Aqui está o código que estou testando com:

Test.css:

Message {
   white-space: pre-wrap;
}

Test.xml:

<?xml version="1.0"?>
<?xml-stylesheet href="Test.css" type="text/css"?>
<Message><![CDATA[
Some data

which is   pre   

formatted
]]></Message>

O exemplo acima funciona bem como está em FF & Safari.

Foi útil?

Solução

Não existe tal coisa, porque o IE ainda não suporta o tipo MIME correto, application / xml + xhtml, para servir HTML como XML. IE, no entanto, XML suporte diretamente assim que você poderia email Basta escrever directamente sem ele fingiu ser HTML e, em seguida, usar uma folha de estilo para tornar a página aparecer como HTML. Este método irá resultar em acessibilidade e violações semânticas porque ninguém vai entender a gramática dos seus elementos XML.

E isso é provavelmente porque XML é mal adotada pela web.

Outras dicas

Não há uma, tanto quanto eu encontrei. Os documentos mentir. documentos XML cru estilo-renderizados aparecem sempre para estar no modo de peculiaridades, quando, em teoria, eles devem estar sempre no modo de padrões, independentemente da doctypes (que são uma espécie de antiquado e não muito usada em XML nos dias de hoje de qualquer maneira).

O exemplo acima não realmente demonstram que embora ... Eu testei com algo parecido com isto:

<?xml-stylesheet href="test.css" type="text/css"?>
<potato>
    <custard>X</custard>
</potato>

custard { width: 150px; padding: 50px; background: yellow; }

Isso torna o preenchimento total de largura + como 150px em vez do 250px correta. Adicionar qualquer um dos seguintes:

<!DOCTYPE potato>
<!DOCTYPE potato SYSTEM "blankfile.dtd">
<!DOCTYPE potato PUBLIC "-//W3C//DTD XHTML 1.0//EN" "blankfile.dtd">

ou alterar o elemento raiz para ‘html’ e referenciando o verdadeiro XHTML DTD URI, não faz diferença. XML bruto tornando estadias em quirks mode. Isso não é nada a ver com o reconhecimento do / xhtml + xml tipo de mídia aplicação MIME.

Eu acho que a renderização em XML bruto do IE é um recurso que na verdade nunca viu nenhuma atualização desde IE5. Ele continua a ser lento, peculiar e inútil.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top