”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > Tailwind v 中令人兴奋的更新

Tailwind v 中令人兴奋的更新

发布于2024-12-22
浏览:676

几个月前(撰写本文时),Tailwind CSS 开源了其在 Tailwind CSS v4.0 上的工作。 (您可以在 GitHub 上找到它)。

最近,Tailwind 宣布了 Tailwind CSS 4 的公开 beta,在本文中我将介绍新版本的亮点。那么让我们开始吧!

一般结构变化

Tailwind 对其发动机进行了重新设计,大大提高了性能。完整构建速度高达 5 倍,增量构建速度高达 100 倍(您没看错)。

Tailwind v4 也有统一的工具链。还记得必须在所有 Tailwind 项目中安装 autoprefixer 和 postcss 吗?以后再也不用这样了!

Tailwind 采用了一种有趣的配置方法,从 JS 配置文件转向 CSS 配置。这意味着您将直接在 CSS 中配置插件、主题和其他行为。

Tailwind 还获得了对 CSS 最新功能的支持。

Exciting updates in Tailwind v�

CSS 有新徽标(和新功能)! ?

最佳代码 ・ 11 月 23 日

#css #webdev #编程 #讨论

现在,总体变化已经完成,让我们看看 Tailwind 具体添加了哪些内容!


新功能?

如果您想尝试 Tailwind v4,请查看 v4(测试版)的入门文档。

如果您想轻松升级项目,只需运行 npx @tailwindcss/upgrade@next,Tailwind 就会为您完成。 小心!可能会有重大变化。

颜色

Tailwind v4 调色板基于 oklch 而不是 rgb。 RGB 颜色系统在跨屏幕的一致性和活力方面有点限制。由于 oklch 颜色系统现已得到广泛支持,Tailwind v4 将利用它!

Exciting updates in Tailwind v�

容器查询

Tailwind v4 现在默认支持容器查询。如果你不知道什么是容器查询,让我解释一下。

您知道 Tailwind 中的 md:、sm: 等内容可以让您自定义在不同屏幕尺寸上应用的 CSS 吗?
在这些情况下,类指的是窗口的大小。通过容器查询,它们可以改为引用容器的大小。

在上面的示例中,网格将有 3 列 - 不是当 窗口 达到小尺寸时,而是当 容器 达到小尺寸时。正如您可以想象的,这在响应式布局中非常方便。

场地大小

field-sizing 还不是普遍支持的 CSS 功能,但如果它得到支持,那就太棒了!您可以仅使用 CSS,而不需要 JS 创建自动调整大小的文本区域。
并且 Tailwind v4 支持它!

在 Tailwind 网站上尝试演示。
现在,您只需将 field-sizing-content 类添加到文本区域即可使用它。

后代更新

Tailwind stable(您可能不知道这一点)有一个 * 变体,允许您针对具有类的元素的 direct 子元素。例如:

Tailwind v4 中的新 ** 变体将针对 所有后代

插入阴影(和环)

现在使用 inset-shadow 和 inset-ring 类可以轻松地在元素上创建插图阴影和圆环。




Exciting updates in Tailwind v�


还有更多!

如果您想查看所有新增内容,请访问 https://tailwindcss.com/docs/v4-beta 并查看它们!

这篇文章是#discuss 文章!这就是为什么我保持简短的原因;我想知道你的想法!
我知道你们中很多讨厌 Tailwind 的人可能会给我一些反馈?
肯定有一些有争议的新功能,我想得到一些意见?

总结:发表评论!


感谢您的阅读!
最佳代码

版本声明 本文转载于:https://dev.to/best_codes/exciting-updates-in-tailwind-version-4-40i0?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何在Java的全屏独家模式下处理用户输入?
    如何在Java的全屏独家模式下处理用户输入?
    在Java 中,以全屏幕独立模式运行Java应用程序时,通常无法按期望的工作可能无法使用JAVA应用程序时,将用户输入在Java ProblemPassive rendering mode allows the use of KeyListener and ActionListener inter...
    编程 发布于2025-05-01
  • 为什么我在Silverlight Linq查询中获得“无法找到查询模式的实现”错误?
    为什么我在Silverlight Linq查询中获得“无法找到查询模式的实现”错误?
    查询模式实现缺失:解决“无法找到”错误在银光应用程序中,尝试使用LINQ建立错误的数据库连接的尝试,无法找到以查询模式的实现。”当省略LINQ名称空间或查询类型缺少IEnumerable 实现时,通常会发生此错误。 解决问题来验证该类型的质量是至关重要的。在此特定实例中,tblpersoon可能需...
    编程 发布于2025-05-01
  • 如何简化PHP中的JSON解析以获取多维阵列?
    如何简化PHP中的JSON解析以获取多维阵列?
    php 试图在PHP中解析JSON数据的JSON可能具有挑战性,尤其是在处理多维数组时。 To simplify the process, it's recommended to parse the JSON as an array rather than an object.To do...
    编程 发布于2025-05-01
  • 为什么不使用CSS`content'属性显示图像?
    为什么不使用CSS`content'属性显示图像?
    在Firefox extemers属性为某些图像很大,&& && && &&华倍华倍[华氏华倍华氏度]很少见,却是某些浏览属性很少,尤其是特定于Firefox的某些浏览器未能在使用内容属性引用时未能显示图像的情况。这可以在提供的CSS类中看到:。googlepic { 内容:url(&#...
    编程 发布于2025-05-01
  • 在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    mysql-python安装错误:“ mysql_config找不到”“ 由于缺少MySQL开发库而出现此错误。解决此问题,建议在Ubuntu上使用该分发的存储库。使用以下命令安装Python-MysqldB: sudo apt-get安装python-mysqldb sudo pip in...
    编程 发布于2025-05-01
  • Java中假唤醒真的会发生吗?
    Java中假唤醒真的会发生吗?
    在Java中的浪费唤醒:真实性或神话?在Java同步中伪装唤醒的概念已经是讨论的主题。尽管存在这种行为的潜力,但问题仍然存在:它们实际上是在实践中发生的吗? Linux的唤醒机制根据Wikipedia关于伪造唤醒的文章,linux实现了pthread_cond_wait()功能的Linux实现,利用...
    编程 发布于2025-05-01
  • Java是否允许多种返回类型:仔细研究通用方法?
    Java是否允许多种返回类型:仔细研究通用方法?
    在Java中的多个返回类型:一种误解类型:在Java编程中揭示,在Java编程中,Peculiar方法签名可能会出现,可能会出现,使开发人员陷入困境,使开发人员陷入困境。 getResult(string s); ,其中foo是自定义类。该方法声明似乎拥有两种返回类型:列表和E。但这确实是如此吗...
    编程 发布于2025-05-01
  • 如何使用Depimal.parse()中的指数表示法中的数字?
    如何使用Depimal.parse()中的指数表示法中的数字?
    在尝试使用Decimal.parse(“ 1.2345e-02”中的指数符号表示法表示的字符串时,您可能会遇到错误。这是因为默认解析方法无法识别指数符号。 成功解析这样的字符串,您需要明确指定它代表浮点数。您可以使用numbersTyles.Float样式进行此操作,如下所示:[&& && && ...
    编程 发布于2025-05-01
  • 在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    For Each Loop vs. Iterator: Efficiency in Collection TraversalIntroductionWhen traversing a collection in Java, the choice arises between using a for-...
    编程 发布于2025-05-01
  • 如何在Chrome中居中选择框文本?
    如何在Chrome中居中选择框文本?
    选择框的文本对齐:局部chrome-inly-ly-ly-lyly solument 您可能希望将文本中心集中在选择框中,以获取优化的原因或提高可访问性。但是,在CSS中的选择元素中手动添加一个文本 - 对属性可能无法正常工作。初始尝试 state)</option> < op...
    编程 发布于2025-05-01
  • 在JavaScript中如何并发运行异步操作并正确处理错误?
    在JavaScript中如何并发运行异步操作并正确处理错误?
    同意操作execution 在执行asynchronous操作时,相关的代码段落会遇到一个问题,当执行asynchronous操作:此实现在启动下一个操作之前依次等待每个操作的完成。要启用并发执行,需要进行修改的方法。 第一个解决方案试图通过获得每个操作的承诺来解决此问题,然后单独等待它们: co...
    编程 发布于2025-05-01
  • 图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    在chrome 中删除一个频繁的问题时,在与Chrome and IE9中的图像一起工作时,遇到了一个频繁的问题。和“边境:无;”在CSS中。要解决此问题,请考虑以下方法: Chrome具有忽略“ border:none; none;”的已知错误,风格。要解决此问题,请使用以下CSS ID块创建带...
    编程 发布于2025-05-01
  • Python中何时用"try"而非"if"检测变量值?
    Python中何时用"try"而非"if"检测变量值?
    使用“ try“ vs.” if”来测试python 在python中的变量值,在某些情况下,您可能需要在处理之前检查变量是否具有值。在使用“如果”或“ try”构建体之间决定。“ if” constructs result = function() 如果结果: 对于结果: ...
    编程 发布于2025-05-01
  • 可以在纯CS中将多个粘性元素彼此堆叠在一起吗?
    可以在纯CS中将多个粘性元素彼此堆叠在一起吗?
    [2这里: https://webthemez.com/demo/sticky-multi-header-scroll/index.html &lt;/main&gt; &lt;section&gt; { display:grid; grid-template-...
    编程 发布于2025-05-01
  • 如何在无序集合中为元组实现通用哈希功能?
    如何在无序集合中为元组实现通用哈希功能?
    在未订购的集合中的元素要纠正此问题,一种方法是手动为特定元组类型定义哈希函数,例如: template template template 。 struct std :: hash { size_t operator()(std :: tuple const&tuple)const {...
    编程 发布于2025-05-01

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3