66 个版本
| 0.13.0 | 2022 年 9 月 30 日 |
|---|---|
| 0.12.7 | 2023 年 11 月 27 日 |
| 0.12.6 | 2023 年 10 月 21 日 |
| 0.12.4 | 2022 年 3 月 9 日 |
#973 在 网页开发 中
每月 255 次下载
在 3 crates 中使用
475KB
12K SLoC
Tailwind CSS
Tailwind 风格追踪器,JIT + AOT 解释器!
use tailwind_css::TailwindBuilder;
fn build() {
let mut tailwind = TailwindBuilder::default();
// The compiler will expand directly into the final css property
// Inline style will not be tracked
let inline = tailwind.inline("py-2 px-4 bg-green-500");
// The compiler will expand into a `class`, and record the style class used
tailwind.trace("py-2 px-4 bg-green-500", false);
// Compile all traced classes into bundle
let bundle = tailwind.bundle();
}
注意
Tailwind++ 语法
此库并非严格按照原始版本实现。
特别是在一些写法可以简化或泛化的时候。
例如,z-index 的任意值需要括号,但 rs 版本不需要。
- js:
z-[100] - rs:
z-100
打包还是内联?
例如,在 p-auto px-px pt-2 pb-2 中存在样式覆盖。
在内联模式下,后者将覆盖前者,最终得到 padding:.5rem 1px
在打包模式下,最终结果取决于浏览器。
实现进度
tailwind-rs 需要您的帮助!
很多文档和测试用例都缺失,欢迎您提交 pr!
详情请查看 tests 文件夹。
- 预检
- 布局
- 纵横比:
TailwindAspect - 容器:
TailwindContainer - 列:
TailwindColumns - 断行:
TailwindBreakAfter - break-before:
TailwindBreakBefore - break-inside:
TailwindBreakInside - box-decoration-break:
TailwindBoxDecoration - box-sizing:
TailwindBoxSize - display:
TailwindDisplay - float:
TailwindFloat - clear:
TailwindClear - isolation:
TailwindIsolation - object-fit:
TailwindObjectFit - object-position:
TailwindObjectPosition - overflow:
TailwindOverflow - overscroll-behavior:
TailwindOverscroll - position:
TailwindPosition - inset:
TailwindInset - left:
TailwindLeft - right:
TailwindRight - top:
TailwindTop - bottom:
TailwindBottom - visibility:
TailwindVisibility - z-index:
TailwindZIndex
- 纵横比:
- Flexbox 与 Grid
- flex-basis:
TailwindBasis - flex-direction:
TailwindFlexDirection - flex-wrap:
TailwindFlexWrap - flex:
TailwindFlex - flex-grow:
TailWindGrow - flex-shrink:
TailWindShrink - order:
TailWindOrder - grid-template-columns:
TailwindGridColumns - grid-template-rows:
TailwindGridRows - grid-column:
TailwindColumn - grid-row:
TailwindRow - grid-auto-flow:
TailwindGridFlow - grid-auto-columns:
TailwindGridAuto - grid-auto-rows:
TailwindGridAuto - gap:
TailwindGap - justify-content:
TailwindJustifyContent - justify-items:
TailwindJustifyItems - justify-self:
TailwindJustifySelf - align-content:
TailwindContent - align-items:
TailwindContent - align-self:
TailwindItems - place-content:
TailwindPlaceContent - place-items:
TailwindPlaceItems - place-self:
TailwindPlaceSelf
- flex-basis:
- 间距
- 尺寸
- 字体排印
- font-family:
TailwindFontFamily - font-size:
TailwindFontSize - font-smoothing:
FontSmoothing - font-style:
TailwindFontStyle - font-weight:
TailwindFontWeight - font-variant-numeric:
TailwindFontVariantNumeric - letter-spacing:
TailwindTracking - line-height:
TailwindLeading - 列表样式类型:
TailwindListStyle - 列表样式位置:
TailwindListPosition - 文本对齐:
TailwindTextAlignment - 文本颜色:
TailwindTextColor - 文本装饰:
TailwindDecoration - 文本装饰颜色:
TailwindDecorationColor - 文本装饰样式:
TailwindDecorationThickness - 文本装饰厚度:
TailwindSizing - 文本下划线偏移:
TailwindUnderlineOffset - 文本转换:
TailwindTextTransform - 文本溢出:
TailwindOverflow - 文本缩进:
TailwindIndent - 垂直对齐:
TailwindAlign - 空白字符:
TailwindWhiteSpace - 单词换行:
TailwindBreak - 内容:
TailwindContent
- font-family:
- 背景
- 背景附着:
TailwindBackgroundAttachment - 背景裁剪:
TailwindBackgroundClip - 背景颜色:
TailwindBackgroundColor - 背景原点:
TailwindBackgroundOrigin - 背景位置:
TailwindBackgroundPosition - 背景重复:
TailwindBackgroundRepeat - 背景大小:
TailwindBackgroundSize - 背景图片:
TailwindBackgroundImage - 渐变开始:
TailwindFrom - 渐变经过:
TailwindVia - 渐变结束:
TailwindTo
- 背景附着:
- 边框
- 边框圆角:
TailwindRounded - 边框宽度:
TailwindBorderWidth - 边框颜色:
TailwindBorderColor - 边框样式:
TailwindBorderStyle - 分割线宽度:
TailwindDivideWidth - 分割线颜色:
TailwindDivideColor - 分割线样式:
TailwindDivideStyle - 轮廓宽度:
TailwindOutlineWidth - 轮廓颜色:
TailwindOutlineColor - 轮廓样式:
TailwindOutlineStyle - 环宽度:
TailwindRingWidth - ring-color:
TailwindRingColor - ring-offset-width:
TailwindRingOffsetWidth - ring-offset-width:
TailwindRingOffsetColor
- 边框圆角:
- 效果
- 过滤器
- blur:
TailwindBlur - brightness:
TailwindBrightness - contrast:
TailwindContrast - drop-shadow:
TailwindShadow - grayscale:
TailwindGrayscale - hue-rotate:
TailwindHueRotate - invert:
TailwindInvert - saturate:
TailwindSaturate - sepia:
TailwindSepia - backdrop-blur:
TailwindBlur - backdrop-brightness:
TailwindBrightness - backdrop-contrast:
TailwindContrast - 背景灰度:
TailwindGrayscale - 背景色调旋转:
TailwindHueRotate - 背景反转:
TailwindInvert - 背景不透明度:
TailwindOpacity - 背景饱和度:
TailwindSaturate - 背景sepia效果:
TailwindSepia
- blur:
- 表格
- 过渡与动画
- 转换
- 交互性
- 强调颜色:
TailwindAccentColor - 外观:
TailwindAppearance - 光标:
TailwindCursor - 光标颜色:
TailwindCaretColor - 指针事件:
TailwindPointerEvents - 可调整大小:
TailwindResize - 滚动行为:
TailwindOverscroll - 滚动边距:
TailwindScrollMargin - 滚动填充:
TailwindScrollPadding - 滚动快照对齐:
TailwindSnapAlign - 滚动快照停止:
TailwindSnapStop - 滚动快照类型:
TailwindSnapType - 触摸操作:
TailwindTorch - 用户选择:
TailwindSelect - 将要改变:
TailwindWillChange
- 强调颜色:
- SVG
- 无障碍访问
依赖项
~2MB
~38K SLoC