我不是前端程序员,但是当我发现HTML4.0不支持css.maxHeight时,我才意识到这个问题。当DOCTYPE引用HTML4.0时,css中的maxHeight不起作用,但将DOCTYPE更改为XHTML1.0,它可以工作。
那么,现在有一个问题,HTML4.0和XHTML1.0对CSS的支持有什么区别?或者,我在哪里可以得到比较图表或统计数据?
修改 - 抱歉错误,它的maxHeight不是maxLength -
我的意思是css.maxHeight只是通过下面的简单代码,backgroundColor在HTML4.0中工作但maxLength没有。
<script languague="javascript" type="text/javascript">
$(document).ready(function() {
var div = $("div");
div.css({ maxHeight: 200,
overflow: 'auto',
backgroundColor:'#eee'
});
});
</script>
这是两种类型的DOCTYPE引用
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
答案 0 :(得分:2)
(或者至少应该)没有区别。 CSS独立于(X)HTML。如果浏览器支持CSS 3功能,则可以将CSS 4与CSS 3一起使用。 XHTML 1.0基本上是XML语法中的HTML 4,其中一些与表示相关的标签和属性已被弃用。
说完了。如果您看到这些页面之间的差异,那么您可能会看到浏览器在怪癖和标准兼容模式之间切换。您说您刚刚将DOCTYPE从HTML 4更改为XHTML。您是否也将文档的其余部分重写为XHTML的XML兼容性?
答案 1 :(得分:2)
使用不同版本的HTML实际上与CSS的支持无关。不同版本的CSS独立于HTML版本。
如果页面呈现标准兼容模式或怪异模式,那么重要的是什么。如果您没有正确的doctype标签,浏览器会认为它是标准化时代之前的旧页面,并且会恢复到怪异模式,它会尝试向后兼容古老版本的浏览器。
浏览器支持的功能集对于标准兼容模式和怪异模式是不同的,主要是在标准兼容模式下禁用的非标准功能。
我不确定“css.maxLength”是什么意思,因为CSS中没有maxlength属性。 HTML中有一个用于文本框的maxlength属性,并且在所有版本的HTML中都支持。