Возможно, вы заметили, что атрибут placeholder
работает должным образом в документах XHTML 1.1, даже если он не проверяется.
Таким образом, для его работы в браузерах не требуется никакого решения, все, что нам нужночтобы сделать, это сделать его валидацией.
Переходное решение заключается в том, чтобы превратить документ в XHTML5, но если это невозможно по какой-либо причине (и я могу подумать об одном), то вам нужно сделать следующее:добавьте определение для этого атрибута в DTD.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"
[
<!ATTLIST input placeholder CDATA #IMPLIED>
]
>
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Input with placeholder in XHTML 1.1</title>
</head>
<body>
<form action="#">
<p><input placeholder="type here"/></p>
</form>
</body>
</html>
Это все, рабочий и проверочный файл XHTML 1.1.Надеюсь, это поможет!