技术分享
6️⃣样式工具的演进发展CSS-SASS-TAILWIND
12394 min
2021-7-2
2024-11-4
type
status
date
slug
summary
tags
category
icon
password
 
大家总说web 通过html ,css ,js来进行描述(PS:好像现在绝大部分内容都可以直接被JS的各种框架进行直接控制,似乎对原始的html以及CSS等不需要过于关注了的hhhhh。)
 
言归正传首先如下是AI对CSS的一个简介,简单来说他历史很久了,主要用作控制样式。
 
CSS (层叠样式表) 是一种用于描述网页样式和布局的语言。以下是对CSS的由来和作用的简要介绍:
由来:
  • CSS 诞生于1994年,由 Håkon Wium Lie 提出。
  • 1996年,W3C(万维网联盟)发布了第一个 CSS 规范。
  • CSS 的出现是为了解决 HTML 在网页设计方面的局限性。
作用:
  • 分离内容和表现:CSS 允许将网页的结构(HTML)和样式分开,提高了代码的可维护性。
  • 控制页面布局:CSS 可以精确控制页面元素的位置、大小和排列。
  • 定义视觉样式:可以设置颜色、字体、背景等视觉效果。
  • 响应式设计:通过媒体查询,CSS 可以根据不同设备的屏幕大小调整页面布局。
  • 提高性能:使用 CSS 可以减少 HTML 文件的大小,提高页面加载速度。
CSS 的引入极大地改变了网页设计和开发的方式,使得网页更加美观、灵活和易于维护
 
但是为什么他们迭代了这么多的工具/语言出来呢,css-sass-less-tailwind等等等等,到底是有什么问题导致的呢,现在我们来探寻一下吧。
 

css 难用的地方有哪些呢/CSS同SASS的对比

 
首先查阅了很多网上的技术文档,然后让AI总结了如下几个CSS的缺点,我们一起来看下吧。

CSS的缺点

  1. 缺乏变量和动态性
      • CSS本身不支持变量,这意味着每次需要更改颜色、字体大小等样式属性时,都需要在多个地方手动更新,既耗时又容易出错。
      其实CSS现在是支持变量的,例如官方文档中就有如下介绍了(使用 CSS 自定义属性(变量) - CSS:层叠样式表 | MDN (mozilla.org)
      针对一些重复使用的变量可以通过预先定义然后通过var(—-xxx)进行使用,例如
      SASS中的变量的话感觉长这样写,他多了一些定义域之类的设计(变量支持块级作用域,嵌套规则内定义的变量只能在嵌套规则内使用(局部变量),不在嵌套规则内定义的变量则可在任何地方使用(全局变量)。将局部变量转换为全局变量可以添加 !global 声明: ),功能的话好像差异不大毕竟原生的CSS中也有这样的功能在嵌套关系继承,可能唯一的差异就是sass可以方便的直接定义全局变量了。
      现在似乎第一个问题或者说缺陷已经不复存在了,因为即使原生的CSS中也带有这变量的功能,
      可能这是由于网上大多文章的时效性导致的吧,CSS3做了大量的更新吧,后面大伙看到相关的文章一定也要注意啦。
      那我们继续往下看呢
       
      • 缺乏动态计算能力,如颜色计算、尺寸调整等,需要通过复杂的CSS技巧或JavaScript来实现。
       
       
  1. 缺乏模块化和复用性
      • CSS没有直接的模块化和复用机制,相同的样式代码可能在多个文件中重复出现,难以维护。
      • 无法像编程语言那样定义可复用的函数或组件。
  1. 语法冗长和重复
      • 对于复杂的样式表,CSS的语法可能会变得冗长和难以阅读,尤其是当涉及到大量的嵌套规则时。
      • 相同的选择器可能需要在不同的地方重复书写,增加了代码的冗余性。
  1. 浏览器兼容性差异
      • 不同浏览器对CSS的支持程度存在差异,需要编写额外的代码来确保样式的一致性。
      • 对于新的CSS特性,需要等待浏览器广泛支持后才能使用。
  1. 缺乏编程逻辑
      • CSS本身不支持条件语句、循环等编程逻辑,这限制了其处理复杂样式逻辑的能力。
 
 
 
 
上一篇
如何发布自己的npm包
下一篇
一些简单的手写题demo