这问题还挺有意思。
就我的理解,目前css3还是在做表现所做的事情,表现的东西,不管是否静与动,它与行为最大的区别在于,行为更大程度是再说与用户的事件交互上,比如点击了表单提交按钮,检验出不合格的字段给出提示
当然表单验证在html5这个代表内容的部分也改进做了很多,这我认为只是为了方便开发者的一个功能,其实严格来说也属于数据,html5可看成是浏览器才能解析的xml,只不过对某些属性提供了浏览器自己默认的处理方式,比如说required="required",表示这个字段的数据是用户必须提供的,本质上还是一个描述,不是行为,如果默认的处理方式不满意,你也可以用javascript去改变他
当然其他的一些事件交互,想网页游戏,就更不用说了,那必然要依靠javascript对事件进行一些相应处理
而反过来,在css3没出现之前,javascript做的一些仅仅是很炫但是不与用户交互的动画效果,其实也算是表现。
而对于css3生成内容,这个地方可能你理解有一个误区,它必定不是生成html的内容,而也是为了表现,如果这个概念不理解清楚,很可能会导致css3 content的滥用,比如说,给blockquote或者q标签的前后加引号,就是一个很好的运用,但是给一段话的后面加另外一段话,就是一个滥用的坏栗子。其实你可以这么去想,css3是为了装饰html这个内容的,所以每当你做完一个页面的时候,最好把css关掉看看html在默认的样式下是否依然还具有非常良好的结构和完整的数据(比如刚才说的坏例子,那已经少数据了),如果在脱掉css3这层漂亮的外衣下依然能一眼就分辨html的胴体,那才是真的搞清楚css和html的职责了