html - 为什么默认情况下 css 不支持变量和层次结构?

标签 html css

<分区>

我对 UI 开发有些陌生,但我对 CSS 的实际工作方式感到非常不舒服。

我的用例:[尝试使用 css & less ]

我想在页面上的特定 div 中应用一些特定样式。

CSS 尝试:

div.class1 {
    font: normal 12px arial, helvetica, sans-serif;
    font-color: #f30;
}
div.class1 div.class2 {
    border: 1px solid #f30;
}

较少尝试:

@red: #f30;
@font-family: arial, helvetica, sans-serif;
div.class1 {
    font: normal 12px @font-family;
    font-color: @red;
    div.class2 {
        border: 1px solid @red;
    }
  • 现在,编写 css 会引发错误,因为它会迫使您在每次尝试实现层次结构和变量重用时重复 #f30div.class2。<

我的问题:

  • 为什么 CSS 让事情变得困难?
  • less 没有什么特别之处 - 只是做了明显的改进并转换为 css?
  • css 想要激励用户的是什么,因为它促进了这种冗余编码风格?

我坚信 css 应该像 less 一样。毫无疑问,我忽略了为什么在 css 中以这种方式完成事情的一些明显优势。

我以为这是一个遗留问题,但当我看到没有尝试用 css3 解决这个问题时,我感到很惊讶。

请帮助我理解我应该如何处理 css?

最佳答案

Css 是一种古老的语言,过时的用户代理需要很长时间才能变得不受欢迎,以至于开发人员停止支持它们。多年来我没有看到 css 发生重大变化。

另外,我相信 css 和 html 最初是为不熟悉编程语言的人准备的。

关于html - 为什么默认情况下 css 不支持变量和层次结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14559223/

上一篇:css3 关键帧动画因未知原因不起作用

下一篇:html - SWF 文件在我的网站上不起作用

相关文章:

html - Jquery 移动错误样式问题

html - 即使映射,我也无法访问 servlet

javascript - 单击后显示工具提示,而不是悬停时显示工具提示

html - 为什么我的 CSS 包装器不适用于我的 HTML 代码

javascript - 如何选择重复的 DIV ID

html - IE8 样式背景 URL 图像

javascript - CSS Transition 在 jQuery .load 回调上失败

php - 从 php 网站连接到 php API

html - jQuery CSS - 不允许覆盖

iphone - 你如何在 iPhone 的 UIWebView 中用 CSS 做圆 Angular ?