首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Tailwind CSS 真有那么好吗?讨厌它的前六大原因

然而,并不是每个人都对 Tailwind CSS 感到满意。事实上,有很多原因让你应该避免使用它,坚持使用纯 CSS 或其他框架。...它们告诉你它们是什么样子。这使得理解和维护你的代码变得困难,因为你必须记住每个类的作用以及它如何影响你的组件的布局和设计。...Tailwind CSS 主张将所有样式放在你的 HTML 中,不是将它们分离到不同的文件或层中。这违反了 Web 开发的核心原则之一:关注点分离。...它适合那些不想理解和学习 CSS 的人 Tailwind CSS 也对你学习和理解 CSS 产生了负面影响。...它适合那些不想理解和学习 CSS 的人 Tailwind CSS 也对你学习和理解 CSS 产生了负面影响

61110
您找到你想要的搜索结果了吗?
是的
没有找到

关于事件的前端面试题总结

它总是引用事件处理程序附加到的元素,不是event.target,event.target标识事件发生的元素。...这道题通常情况下会有好几种引出方式,看面试官如何带节奏了~ 比如,会问你如何一个超长的商品列表中的每个商品绑定一个点击事件啊?如何解决大量事件绑定造成的内存开销问题啊?...事件委托是指利用“事件冒泡”,通过指定一个事件处理程序,来管理某一类型的所有事件。...7.什么是事件循环 事件循环是一个大概念,想要讲透不是几句话可以说清的。当然如果面试官问到了,他的初衷也绝对不是想让你透彻的讲解一遍,只是想确认面试者对于JS运行机制的了解程度。...8.css3中有哪些属性可以直接影响JS中的事件?

1.5K50

如何使用纯 CSS 制作四子连珠游戏

为了让演示好看一些,我使用 radial-gradient(),不是在游戏板(the board)或者圆盘(the discs)上贴一张图片。...名称相同的 radio按钮在未选中时都处于这种状态。哇,这是一个真正的初始状态!真正有用的是,选中后一个同胞元素也会对前者产生影响!于是我在游戏板上放置了 42 对 radio input。...这是显而易见的,但它们如何影响其他元素呢?至少计数器值可以改变伪元素的宽度。不同的数有不同的宽度。字符 1 通常比 0 纤细,但这是很难控制的。...如果改变的是字符的数量,不是字符本身,那么由此产生的宽度变化就是可控的。在 CSS 计数器中使用罗马数字并不少见。...不是所有浏览器都支持 radio 按钮的 :indeterminate 属性。 总结 感谢阅读到最后一部分!

1.9K20

HTML、CSS 和 JavaScript 基本前端语言学习指南

JavaScript 可以说是三者中最复杂的,用于使网站更具交互性,并支持开发更复杂的网站——弹出框、更改颜色的按钮以及您喜欢的网站的所有其他动态方面都可能启用通过 JavaScript。...如果你想比较这些语言,可以这样想:虽然 HTML 为网站创建了基本结构,但 CSS 为该结构添加了样式, JavaScript 承担了所有这些工作,并使其具有交互性且功能更复杂。...CSS 将允许您修饰所有这些文本,赋予其格式、颜色和样式,同时帮助您构建用户输入答案的框。然后,JavaScript 将使您能够编写一个弹出的小框并显示“感谢输入!” 当所有内容都已填写并提交时。...虽然有些网站引入了更复杂的编码语言,但完全有可能使用 HTML、CSS 和 JavaScript 来制作一个令人兴奋、美观、交互式的网站。...您将向现有 HTML 添加 CSS 标记以添加颜色、样式和主题,例如背景颜色。CSS 可以帮助您使您的网站感觉像是一个地方,不仅仅是一组信息。

5.2K30

成为一名高级 React 需要具备哪些习惯,他们都习以为常

你可以尝试编写同步两个state 的代码,但这是一个容易出错的地方,不是解决方案。 这是一个在我们的待办事项列表应用程序上下文中重复状态的例子。...你可以在状态中存储两个数组,一个数组包含所有的待办事项,另一个数组包含完成的任务: const [todos, setTodos] = useState([]) const [completedTodos...将你的光标移动到一个可点击的元素上应该会稍微改变元素的颜色,并使光标变成一个“指向手”,也就是CSS中的指针。将鼠标悬停在一个引导按钮上,看看这些最佳实践的运行情况。 不要隐藏重要的UI元素。...想象一下,在一个待办事项列表应用程序中,“X”按钮删除待办事项时是不可见的,直到你将鼠标悬停在该待办事项上。有些设计师喜欢这样的“整洁”,但这需要用户四处搜寻,弄清楚如何执行基本操作。...在显示表单时,使用粗体颜色来吸引用户注意提交按钮!如果有一个永久删除某些内容的按钮,它最好是红色的!查看Bootstrap的按钮和提醒来了解这一点。

4.7K40

Tailwind CSS,值得2024年的你一试吗?

React集成示例 以下是一个React组件的代码示例,展示了如何在React应用中使用Tailwind CSS来创建一个蓝色按钮按钮上的文本为白色。...JIT模式 按需生成CSS样式: JIT(即时)编译器在您编写模板时按需生成CSS样式,不是在初始构建时预先生成所有类。...这些特点使它成为当下前端开发领域的一个重要选择。...思维方式调整: 这更多的是关于适应新的思维方式,不是实际的创造性设计限制。 文件大小 生成大型CSS文件: Tailwind CSS可能会生成较大的CSS文件,这可能影响页面加载时间。...Tailwind CSS及其即时编译器(JIT compiler)为开发者提供了一个解决方案(想了解如何启用它,请访问Tailwind的官方网站)。但是,动态应用颜色并不是一件简单的事。

35710

浏览器解析 CSS 样式的过程

当优先级与多个CSS声明中任意一个声明的优先级相等的时候,CSS 中最后的那个声明将会被应用到元素上。 在下面的示例中,div 将具有蓝色背景。...布局的目的是在Box Tree中调整所有盒子的大小和位置,使它们为绘制做好准备。 下面示例可以更容易地理解Box Tree是如何构建的。...在本例中,它使用文本布局一个按钮,因此其最窄的大小(包括所有其他CSS框)将是最长单词的大小。在最宽的地方,它将是一行的所有文本,加上 CSS Box。注意:这里按钮的颜色不是文字的颜色。...然后它遍历到下一个最高的堆栈上下文(在本例中是“Item 1”),并按照 CSS 2.2中定义的顺序绘制它。 z-index 不影响颜色,只影响哪些元素对用户可见,因此也不影响哪些文本和颜色可见。...创造互动的视觉 正如我们刚刚了解到的,我们使用了所有的样式和DOM,并生成了一个呈现给最终用户的图像。那么浏览器如何创建交互性的假象呢?

1.6K00

容易被忽略的CSS安全性

那么 他们可能会删除资源,从而给我返回一个404,使我的网站看起来支离破碎,从而辜负了这种信任。同时他们也有可能会用一些不恰当的内容取代原来的图片。 不过图像的影响仅限于元素本身的内容框。...如果遇到恶意脚本,则应使用 Clear-Site-Data标头清除所有站点数据。 第三方CSS ? CSS的作用更接近于脚本不是图像。和脚本一样,它适用于整个页面。...把一个有“删库跑路”功能的按钮设为不可看,然后再把它放在用户可能会点击的地方。 值得庆幸的是,如果按钮执行的是后果非常严重的操作,该网站可能会首先显示确认对话框。...没关系,只需使用更多的CSS来诱骗用户单击“是的我确定!”按钮不是“哦天呐!不是!”按钮。 想象一下,如果浏览器确实试图消除“键盘记录”这种小伎俩的影响。...所有这些都可以被CSS选择器设为目标,并且可以把结果发到某个服务器上。 监控互动 ? 可以将hover和active等动作发送回服务器。 适当的使用CSS,你可以很好地了解用户想要干什么。

86330

别再用 display: contents 了

当你对一个元素应用 display: contents,这个元素本身就像从DOM(文档对象模型)中消失了一样,它的所有子元素则会升级到DOM结构中的下一个层级。...display: contents 和可访问性的长期问题 从字面上看,这个CSS声明改变了其应用到的元素的显示属性。它使元素“消失”,将其子元素提升到DOM中的下一层级。...讽刺的是,其中一个用例就是改善你工作的底层语义。然而,这个声明一开始的效果有点过头了。 CSS和可访问性 不是每个人都意识到这一点,但某些CSS影响辅助技术的工作方式。...可访问性并不是每个人的首要任务。我可以在这里稍微宽容一些,因为我主要是尝试用我拥有的东西工作,不是我希望能有的东西。我习惯了应对由于这种优先级产生的所有小问题、陷阱和杂项。...这不是互操作性问题,而是由于疏忽造成的伤害。 display: contents 的回归给我们提供了一个小小的窗口,让我们看到浏览器制作的某些方面是如何(或不是如何)被优先考虑和测试的。

13530

别再用 display: contents 了

当你对一个元素应用 display: contents,这个元素本身就像从DOM(文档对象模型)中消失了一样,它的所有子元素则会升级到DOM结构中的下一个层级。...display: contents 和可访问性的长期问题 从字面上看,这个CSS声明改变了其应用到的元素的显示属性。它使元素“消失”,将其子元素提升到DOM中的下一层级。...讽刺的是,其中一个用例就是改善你工作的底层语义。然而,这个声明一开始的效果有点过头了。 CSS和可访问性 不是每个人都意识到这一点,但某些CSS影响辅助技术的工作方式。...可访问性并不是每个人的首要任务。我可以在这里稍微宽容一些,因为我主要是尝试用我拥有的东西工作,不是我希望能有的东西。我习惯了应对由于这种优先级产生的所有小问题、陷阱和杂项。...这不是互操作性问题,而是由于疏忽造成的伤害。 display: contents 的回归给我们提供了一个小小的窗口,让我们看到浏览器制作的某些方面是如何(或不是如何)被优先考虑和测试的。

34820

Web 隐藏技术:几中隐藏 Web 中的元素方法及优缺点

一个元素使用display: none隐藏时,它的所有后代都将被删除。...例如,如果被CSS隐藏,并且我们在某个断点处显示它,则它已经被加载。 即使图片被CSS隐藏,该图片也会引起HTTP请求。 在下面的演示中,我添加了一个图像,并使用CSS隐藏它。...image.png 请注意,蓝皮书是如何从可视流中隐藏的,但是它并没有影响图书堆栈的顺序。...颜色透明 通过使文本的颜色透明,它将隐藏在视觉上。这对于只有图标的按钮非常有用。 字体大小 此外,将字体大小设置为0也很有用,因为这会在视觉上隐藏文本。...有一个常见的CSS类,称为sr-only或visual -hidden,它在视觉上隐藏一个元素,并让键盘和屏幕阅读器用户可以访问它。

5K30

不要在按钮、链接或任何其他文本容器上使用固定的 CSS 高度或宽度

免费体验 Gpt4 plus 与 AI作图神器,我们出的钱 体验地址:体验 为什么 尽管一些网页设计工具为按钮等元素指定了 CSS 高度值,但设置高度或最大高度实际上可能会违反 WCAG 2.2 Success...如果对影响元素计算高度和宽度的 CSS 属性使用固定值,当文字大小增大时,元素内部的文字会被截断。 还不信服? 你可能会想:"但当我把浏览器放大到 200% 时,按钮文本看起来很好!"...这个标准也是为什么 CSS font-size 属性使用 rem单位, line-height 属性不使用单位的一个原因。在没有浏览器缩放等机制的情况下,文字大小必须可以调整到 200%。...line-height: 18px; width: 82px;"> delete all 演示 2 现在,我们使用相同的代码,并尝试在 line-height 和 padding 中不使用单位,以影响按钮的...与使用 width 和 max-width 相比,我们可能只需使用 padding ,然后让浏览器执行其默认的魔法,使元素适合视口。

9610

单选按钮的用户体验设计

现代软件中的单选按钮正是仿照的这些物理按钮。 二、单选按钮的最佳实践 1、使用单选按钮仅用来设置 使用单选按钮来更改设置,不是作为操作按钮来执行命令。...如果单选按钮被用来影响一个命令的执行,那最好还是用显示命令的变化来取代。这样做允许用户选择单个交互的正确命令。...7、使用单选按钮不是下拉列表 如果可能,就使用单选按钮不是下拉列表。单选按钮认知成本低因为它把所有选项可见从而让用户很容易比较选择。 如果你的选择项少于7个,你应该考虑使用单选按钮。...用户能够很快看到有几个选项以及每个选项是什么,不用点击或其他操作再去发现这些信息。 8、避免嵌套 避免嵌套单选按钮和其他单选按钮或复选框。应该把所有选项置于同一层级避免用户困惑。...二、复选框是一个更好的选择吗? 如果只有两个选项,你应该使用单独一个复选框取而代之。然而,复选框适合真对一个选项是开启还是关闭,单选按钮则可以被用到完全不同的选项中。

6.1K100

❤️使用 HTML、CSS 和 JS 创建响应式可过滤的游戏+工具展示页面 ❤️

值得注意的一点是,所有作品都可以在这里按类别排序。有一个导航栏,其中对所有类别进行了排序。单击这些类别中的任何一个时。然后可以看到该类别中的所有作品,隐藏其余作品。...我已经通过下面的图文向初学者展示了如何为初学者制作它的完整步骤。当然,你也可以使用文章底部的下载按钮下载所需的源代码。 我使用下面的 CSS 代码完成了网页的基本设计。...第 2 步:为类别创建导航栏 现在我已经使用下面的 HTML 和 CSS 代码创建了一个导航栏。正如我之前所说,有一个导航栏,所有类别都在其中进行了排序。在这里,我使用了 5 个主题和 15 个图片。...当您单击此类别时,该类别其余部分中的所有图像将被隐藏,所有四个图像将并排显示。以下代码已用于使此重定位更加生动。此处使用了 0.5 秒,这意味着更改该位置需要 0.5 秒。...CSS .gallery .gallery-item.hide{ display: none; } 第 5 步:使可过滤的图片库具有响应性 现在我已经使用 CSS 代码的媒体查询使它具有响应性。

6.4K20

101种让你的网站更棒的方法

如果你选择在hover状态是使按钮变亮,那么其他元素hover状态也应当保持一致。 保持表格样式的一致性。...说到这,就要说一下去除内联样式,99%的情况,都应该是使用一个可以更新所有组件实例的CSS文件,不是一页页一行行的改。 使用Sass变量代替CSS来保持网站中颜色和组件的一致性。...与永久链接链接不是URL以防你更改域名。...这一条的优先级不是最高的,但是如果在页面中没有任何错误会让你很舒适。 建立一个模拟环境来展示最近的修改。理想情况下是有一个成品网站,来给所有人看,并且有一个开发网站,来给开发人员做修改。...社交媒体营销的目的就是将用户引向你的网站,不是别的什么。

1.3K40

如何在 React 中高效管理 CSS

classNames.join(" "); return {children}; } 在上面的代码片段中,我们创建了一个包含所有用于按钮样式的...我们使用 join() 方法不是 toString() 方法,因为 toString() 方法返回的字符串使用逗号作为分隔符来连接数组中的 CSS 类。当应用于元素时,这无法生成预期的样式。...: 当我们在浏览器的开发者工具中检查该元素时: 这些类被逗号分隔,并作为单个类不是单独的类应用于按钮上。...保存文件后,您将得到同样漂亮的按钮: 这种方法可以进一步优化,在应用相应的 CSS 类之前检查 prop 是否具有有效值,不是在 prop 的值为 true 时应用与任何 prop 相关联的 CSS...如果额外的依赖项和学习库所需的时间不是问题,那么 clsx 是更好的选择,因为它提供了更易于理解的语法,使调试您的应用程序比手动方法更容易。

10010

分享一个简单容易上手的CSS框架:Pure.Css

Pure.css旨在轻量、模块化和响应式,使构建快速加载、适用于任何设备的移动友好网站变得简单。在本文中,我们将讨论Pure.css的工作原理以及如何使用它。...因此,您可以利用Pure.css来构建在所有现代浏览器中看起来相同的网站,不必担心不一致或跨浏览器兼容性问题。...如果你正在开发一个需要许多自定义样式和组件的复杂项目,这可能是一个不利之处。 另一个潜在的缺点是Pure.css使用Normalize.css,这是一个样式表,旨在使默认样式在不同浏览器中保持一致。...important 规则指定应将特定样式应用于元素,不管应用于该元素的任何其他样式。例如,如果您想要覆盖Pure.css按钮的默认颜色,可以在样式表中使用 Pure.css !...important; } 这将确保按钮的颜色始终为红色,不受应用于按钮的任何其他样式的影响。使用命名空间和 Pure.css !

55130

深入解析CSS盒子模型:构建网页布局的核心概念

当涉及到网页设计和排版时,CSS盒子模型是一个非常重要的概念。理解盒子模型是构建网页布局的关键,它定义了元素在网页中的尺寸和排列方式。...在本文中,我们将深入探讨CSS盒子模型的各个方面,包括它的基本构成、如何影响元素的布局和尺寸,以及如何在实际项目中应用它。 什么是CSS盒子模型?...盒子模型的类型 在CSS中,有两种常见的盒子模型,它们分别是: 标准盒子模型(Content Box Model) :默认情况下,元素的宽度和高度包括内容的尺寸,不包括内边距、边框和外边距。...IE盒子模型(Border Box Model) :IE盒子模型将元素的宽度和高度包括了内容、内边距和边框的尺寸,不是仅包括内容。...这个模型在一些旧版的Internet Explorer浏览器中被采用,但可以通过CSS属性进行切换。 如何设置盒子模型 要设置元素的盒子模型,可以使用CSS的box-sizing属性。

40760
领券