您好,匿名用户
随意问技术百科期待您的加入

CSS3 动画是表现还是行为?

0 投票

我们常说表现、内容、行为要分离,在CSS3之前时我们分辨得很清楚。但是现在发现利用CSS3你可以做纯CSS的选项卡,纯CSS的下拉菜单,可以实现缓动效果,动画效果,利用 input[type=checkbox]:checked还可以实现点击响应。CSS3干了不少JavaScript一直在做的事。CSS3 的 content 还可以生成HTML内容。这个时候如何理解“表现、内容、行为”的分离?

看了这篇文章 谈谈我的“分离”观 还是疑惑。我们说不能认为脚本就是行为,脚本可以生成内容也可以改变表现,但里面提到“行为,指由用户触发的由脚本与服务器端的交互”,那么弹窗也不算行为?或者说到了现在,已经没必要分清楚?你怎么理解?

用户头像 提问 2012年 12月1日 @ Vladimir 上等兵 (275 威望)
分享到:

1个回答

0 投票

这问题还挺有意思。

就我的理解,目前css3还是在做表现所做的事情,表现的东西,不管是否静与动,它与行为最大的区别在于,行为更大程度是再说与用户的事件交互上,比如点击了表单提交按钮,检验出不合格的字段给出提示

当然表单验证在html5这个代表内容的部分也改进做了很多,这我认为只是为了方便开发者的一个功能,其实严格来说也属于数据,html5可看成是浏览器才能解析的xml,只不过对某些属性提供了浏览器自己默认的处理方式,比如说required="required",表示这个字段的数据是用户必须提供的,本质上还是一个描述,不是行为,如果默认的处理方式不满意,你也可以用javascript去改变他

当然其他的一些事件交互,想网页游戏,就更不用说了,那必然要依靠javascript对事件进行一些相应处理

而反过来,在css3没出现之前,javascript做的一些仅仅是很炫但是不与用户交互的动画效果,其实也算是表现。

而对于css3生成内容,这个地方可能你理解有一个误区,它必定不是生成html的内容,而也是为了表现,如果这个概念不理解清楚,很可能会导致css3 content的滥用,比如说,给blockquote或者q标签的前后加引号,就是一个很好的运用,但是给一段话的后面加另外一段话,就是一个滥用的坏栗子。其实你可以这么去想,css3是为了装饰html这个内容的,所以每当你做完一个页面的时候,最好把css关掉看看html在默认的样式下是否依然还具有非常良好的结构和完整的数据(比如刚才说的坏例子,那已经少数据了),如果在脱掉css3这层漂亮的外衣下依然能一眼就分辨html的胴体,那才是真的搞清楚css和html的职责了

用户头像 回复 2012年 12月1日 @ Corki 上等兵 (263 威望)
提一个问题:

相关问题

0 投票
1 回复 31 阅读
+1 投票
1 回复 54 阅读
用户头像 提问 2012年 12月1日 @ Zilean 上等兵 (230 威望)
0 投票
1 回复 32 阅读
用户头像 提问 2012年 12月1日 @ Gemini 上等兵 (319 威望)
0 投票
1 回复 56 阅读
0 投票
1 回复 48 阅读
用户头像 提问 2013年 9月12日 @ Pikachu 上等兵 (475 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...