当前位置:  开发笔记 > 编程语言 > 正文

有替代CSS吗?

如何解决《有替代CSS吗?》经验,为你挑选了9个好方法。

是否有替代CSS的样式表格式化语言?或者CSS是当前用于制作样式表格式类型的单一语言吗?

我查看了维基百科上的CSS编写(http://en.wikipedia.org/wiki/Cascading_Style_Sheets)和其他一些关于CSS的评论,并对在不同的Layout引擎中缺乏对CSS的完全支持感到气馁,所以我只是好奇是否有替代方案或者我必须学会使用CSS过滤器.

感谢您的任何见解.



1> Dan Herbert..:

CSS是唯一真正的选择.

一旦你了解了CSS的来龙去脉,浏览器对CSS的支持就不应该是一个主要问题(在大多数情况下).理解CSS的关键是它的目的是定义HTML文档的样式,它应该与内容分开.

您需要练习如何在不支持功能的浏览器中优雅地降低内容.这里的基本思想是,您应该使最低的公分母(通常是Internet Explorer)工作"足够好",以免影响用户体验,并为具有更好浏览器的用户提供细节.另外,不要首先为Internet Explorer开发.把它留到最后,然后修复它的错误.反过来做事(IE首先)要困难得多.

您还可以选择使用JavaScript来设置样式,但不推荐这样做,因为您应该避免在JavaScript中应用样式,因为JavaScript是针对逻辑而不是样式.

网页上有3个(取决于你如何看待)组件:

HTML - 用于内容

CSS - 用于样式化内容

JavaScript - 用于为您的内容应用其他或动态逻辑


其中的关键是第二句话:"一旦你了解了CSS的来龙去脉,对CSS的浏览器支持不应该是一个主要问题(在大多数情况下)." 抱怨CSS被打破的人最不知道.
@RobAllen我对Malbolge说了同样的话,这是我最喜欢的编程语言.那些认为不可能的人只是不了解它,知道它有多棒.

2> Rolf..:

你们都试图从程序员的角度来回答这个问题.我认为原始海报正在寻找一种更加图形友好的替代方案 - 一种可以提供不同概念的海报.

即使CSS3被跨浏览器采用,我相信CSS的布局方式(内联框,浮点数,边距等)也很糟糕.我是一名程序员,但我的父亲是一名出版商和平面设计师,我从最小的年龄开始就一直沐浴在平面设计中,我敢说他们20年前使用的出版软件比HTML /更先进和用户友好现在的CSS.


**"我的父亲是一位出版商和平面设计师,自从我年纪最小的时候就一直沐浴在平面设计中,我敢说他们20年前使用的出版软件比HTML/CSS更加先进和用户友好. "**......不同之处在于你的父亲不是为不同的屏幕尺寸,屏幕阅读器,不同的浏览器版本(具有不同的功能)而设计的.等.设计印刷比设计屏幕显示要简单得多,并且因此,CSS比设计用于布局印刷媒体的语言更复杂.
但是,CSS属性中的"副作用"太多了
Excactly!CSS和图形布局的认知工作流程不在同一个抽象层面.
恕我直言,即使在2015年,这个答案也被低估了.
@AbhinavGauniyal*特别是*2015年

3> Camilo Marti..:

的,它被称为LESS,它确实解决了大多数CSS的代码可读性问题.

您可以使用less.js在服务器或动态客户端编译它.

对于生产,我建议设置一个编译它的构建脚本(在NodeJS中,这是Grunt和grunt-contrib-less的小菜一碟).


编辑:还有其他值得一提的选项,即使我正在使用和推荐LESS.

萨斯:红宝石人喜欢这个.它不像LESS那样是超集的CSS,而是使用自己的语法.为了解决这个问题,他们开发了SCSS,这一个CSS超集,类似于LESS.

手写笔:像LESS一样,它用javascript编码,但这通常用于Node.js. 我不能保证它,因为我还没有尝试过,但它已经非常成熟,所以如果它有你想要的功能,一定要去尝试.

Turbine:这个是用PHP编写的.牵引力不大.

切换CSS:也许Python黑客会想要研究这个问题.牵引力更小.

如果你感觉更另类,也就是CSS Cacheer,CSScaffold,DtCSS,CSSPP,甚至一些由porneL.


您可能想要查看的其他内容:

指南针:Ruby人员的全面CSS创作框架.

WinLESS:Windows的拖放LESS编译器,它非常酷,你真的应该检查出来.

LESS Elements, Preboot, LESSHat even.less:LESS的mixins和constants库.

Bootstrap:Twitter开发的框架.还有关: HTML5 Boilerplate.

Normalize.css: CSS重置的替代方法.然而,有许多重置,作为一个开发者,我不得不说:大多数都是垃圾.如果你不打算自己做,那就用这个吧.


更新:自1.4以来,LESS也有@extend.如果可能,请务必使用1.4+!这就完成了我认为选择LESS优于SASS的原因.


不幸的是,这似乎不是*模型*本身的替代品.
我贬低了因为这些是预处理器,而不是替代品.它们位于CSS之上,最后输出CSS.所以它只是一个更高的抽象级别 - 但不是替代方案.
因为竞争有助于进步."样式表"是什么意思?我将它与文本中的级联和不同文件/部分相关联.但是还有更多的盒子模型,使用标签和容器合并到文本中(使用html).是否有实现[in]依赖? - 例如 样式表可以应用于除html/xml之外的任何东西吗?(如果您编写样式表并希望将其应用于非基于gt/lt的文本或二进制格式,那该怎么办?您是否可以重复使用任何样式表实现,或者在自己的环境中重复使用?)

4> Patrick McEl..:

是.

正如其他人所说的那样,CSS是你唯一真正的选择,但网上还有另一种语言"样式表格式化类型",称为可扩展样式表语言(XSL),特别是称为XSL-FO的规范的子集.(格式化对象).

有一次,根据您的要求,它的目的是与CSS竞争或协作.



5> Scoregraphic..:

广泛的CSS并没有得到所有浏览器的全面支持......一个(未知的)替代方案应该如何实现这一目标?


通过具有可预测,直观的布局模型,并修复新版本中的问题而不是留下错误.

6> EFraim..:

好吧,几乎每个浏览器都支持CSS 2.1.(IE6除外)一旦知道安全子集,就可以轻松编写优雅降级的CSS.(这样即使是不支持的浏览器也不会完全弄乱页面)

有关CSS浏览器兼容性提示,请参阅http://www.quirksmode.org.


为quirksmode +1 - 每个以CSS开头的用户都需要知道.我补充说,IE7也非常糟糕,不幸的是,大多数网络(以及几乎所有企业网络)都只是IE 6和7,所以你必须小心使用CSS2.

7> hasen..:

对于在不同的Layout引擎中缺乏对CSS的完全支持感到气馁

我认为jQuery有一些方法可以使css在浏览器之间更加兼容,即如果你使用jQuery指定一些属性,那么它将尝试确保为不支持某些功能的浏览器使用解决方法.

还有一个名为CleverCSS的项目,您可能想要查看它.它不是它的替代品,只是稍微不同的方式来定义它.



8> 小智..:

样式表语言列表:http : //en.wikipedia.org/wiki/List_of_stylesheet_languages



9> Sam Adamsh..:

网格样式表(GSS):GSS

更好的方法


站点不再存在。
推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有