Golang:使用wellington/go-libsass对CSS进行预处理

wellington/go-libsass是一个用于预处理CSS文件的库,采用 Go封装,100% 与 Sass 兼容的 libsass 项目

不过需要依赖libsass,现在已经过时了,可以考虑使用dart-sass

文档

安装

bash 复制代码
go get github.com/wellington/go-libsass

代码示例

go 复制代码
package main

import (
    "os"

    "github.com/wellington/go-libsass"
)

func main() {
    // 指定输入
    input, _ := os.Open("style.scss")
    defer input.Close()

    // 指定输出
    output, _ := os.Create("out.css")
    defer output.Close()

    // 处理
    comp, _ := libsass.New(output, input)

    // 设置选项
    comp.Option(libsass.OutputStyle(libsass.EXPANDED_STYLE))

    // 运行处理
    comp.Run()
}

输入 style.scss

css 复制代码
div {
  p {
    color: black;
  }
}

输出 out.css

css 复制代码
div p {
  color: black;
}
相关推荐
联犀7 小时前
纯 Go 的 CAD 开源库 go-cad:直接解析 DWG/DXF,现在也能导出 PDF
开发语言·golang·pdf
程序员大阳10 小时前
HTML+CSS+JS对话式实战(3)-活动管理页实现查询、新增、删除API后端接口
javascript·css·html·实战·删除·查询·新增
FungLeo10 小时前
成为全栈·Go 后端篇·三轮代码审阅之后:把可读性和证据做成工程规则
golang·go·ast·静态检查·成为全栈·代码审阅
unconditional11 小时前
我拆了 sdkm 的回滚设计:每个写操作,都提前写好了翻车预案
rust·开源
数字幽灵11 小时前
开源!我用 Rust 手搓了一个 Agent 原生的鸿蒙逆向分析平台
rust
联犀14 小时前
联犀 Go SIMD 实战:视频转码从 16.5ms 到 5.46ms
开发语言·golang·音视频
ZhengEnCi1 天前
12 种高级 UI 交互效果及对应 AI 提示词:从按压回弹到底部抽屉的物理感教学
前端·css·交互设计
紧跟先前的步伐1 天前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
ZhengEnCi1 天前
为什么苹果的圆角更高级:连续曲率圆角 Squircle 从超椭圆到 CSS 实现的完全讲解
css·设计
Kapaseker2 天前
Rust 不用写 for 循环?看我怎么写!
rust