我有一个XHTML严格的页面,其中有一个由Javascript控制的不可见的div.该div被设置为透明和可见的脚本和鼠标悬停事件,使div不透明的悬停.
当有人使用浏览器(或firefox with noscript)没有javascript时,div只是保持隐形.这个问题是我不想让内容无法访问.我也不想离开div可见,然后使用脚本使其透明,因为div位于文档的底部,每当页面加载时它会引起明显的闪烁.
我已经尝试使用noscript标签来嵌入一个额外的样式表,这个样式表只对没有JavaScript的奢侈品的人们加载,但这不符合XHTML严格验证.有什么其他方式可以在XHTML有效的noscript块中添加额外的样式信息吗?
艾德:
有一个简单的测试用例我得到一个验证错误:文档类型不允许元素“样式”在这里.
这是一个空的XHTML严格文档,一个样式元素在一个noscript元素内.鼻涕在身体内.
解决方法
要清除验证问题:noscript只允许在body元素中,样式只允许在头文件中.因此,后者是不允许在前者.
在一般问题上:您将要使div元素默认可见,然后通过CSS javascript隐藏.这是“进步增强”模式.我注意到你说你“不想这样做,因为闪烁”,但我不知道究竟是什么导致这个 – 有可能你可以修复它,所以也许你应该把它作为一个问题.