[CSS 3] Tailwindcss 响应式设计

news/2025/3/6 15:07:45/文章来源:https://www.cnblogs.com/Answer1215/p/18755188

## 响应式断点

*Tailwind CSS* 默认提供了一组预设的断点,即屏幕尺寸范围,用于管理响应式样式。默认的断点包括:

- *sm*: *640px* 及以上
- *md*: *768px* 及以上
- *lg*: *1024px* 及以上
- *xl*: *1280px* 及以上
- *2xl*: *1536px* 及以上

例如:

```html
<img class="w-16 md:w-32 lg:w-48" src="...">
```

在这个例子中,\<*img*> 标签的 *class* 属性包含了一组 *Tailwind CSS* 类,用于根据不同的屏幕尺寸调整图片的宽度。让我们详细解释这些类的含义:

- *w-16*: 默认情况下,图片的宽度被设置为 *4rem*(*16* x *0.25rem*)。
- *md:w-32*: 当屏幕尺寸达到 "*medium*" (*md*) 断点(默认为 *768px* 及以上)时,图片的宽度将被设置为 *8rem*(*32* x *0.25rem*)。
- *lg:w-48*: 当屏幕尺寸达到 "*large*" (*lg*) 断点(默认为 *1024px* 及以上)时,图片的宽度将被设置为 *12rem*(*48* x *0.25rem*)。

其中的 *md* 等价于 @*media* (*min-width*: *768px*) { ... }

您还可以根据需要在 *tailwind.config.js* 文件中自定义断点。例如:

```js
// tailwind.config.js
module.exports = {
  theme: {
    screens: {
      'xs': '480px',
      'sm': '640px',
      'md': '768px',
      'lg': '1024px',
      'xl': '1280px',
      '2xl': '1536px',
    },
    // ...其他配置
    // 如果你只是想新增一两个断点,那么还是建议在 extend 里面进行扩展
  },
  variants: {},
  plugins: [],
};
```

在这个例子中,我们添加了一个名为 *xs* 的新断点,其屏幕尺寸为 *480px* 及以上。现在,您可以在 *HTML* 中使用 *xs* 前缀来应用响应式样式,例如:

```html
<div class="w-full xs:w-1/2">
  <!-- Your content goes here -->
</div>
```

有时,您可能需要根据屏幕尺寸控制元素的显示状态。*Tailwind CSS* 提供了一系列响应式显示类来实现这一点。例如:

```html
<div class="hidden md:block">
  <!-- This content is hidden on small screens and visible on medium screens and above -->
</div>
```

在这个例子中,我们使用 *hidden* 类将元素默认设置为隐藏状态,然后使用 *md:block* 类在中等尺寸屏幕和更大的屏幕上显示元素。

再来看一下弹性盒和网格布局相关的例子。例如:

```html
<div class="flex flex-col lg:flex-row">
  <div class="w-full lg:w-1/3">
    <!-- Column 1 content -->
  </div>
  <div class="w-full lg:w-1/3">
    <!-- Column 2 content -->
  </div>
  <div class="w-full lg:w-1/3">
    <!-- Column 3 content -->
  </div>
</div>
```

在这个例子中,我们使用 *flex flex-col* 类将 *Flexbox* 布局默认设置为垂直方向。随后,在大屏幕(*lg* 断点)上,我们使用 *lg:flex-row* 类将布局切换为水平方向。

类似地,您可以使用响应式 *Grid* 类来创建自适应 *Grid* 布局。例如:

```html
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3">
  <div>
    <!-- Column 1 content -->
  </div>
  <div>
    <!-- Column 2 content -->
  </div>
  <div>
    <!-- Column 3 content -->
  </div>
</div>
```

在这个例子中,我们使用 *grid grid-cols-1* 类将 *Grid* 布局默认设置为单列。随后,在中等尺寸屏幕上,我们使用 *md:grid-cols-2* 类将布局切换为双列,而在大屏幕上,我们使用 *lg:grid-cols-3* 类将布局切换为三列。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/894657.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI赋能软件测试:从自动化到智能化

一、为什么测试工程师需要关注AI? 传统测试的困境:重复劳动陷阱:手工编写测试用例、反复验证边界条件、兼容性测试的“设备海洋”消耗大量人力。“后知后觉”的反馈:性能瓶颈常在用户量激增后才暴露,修复成本高昂。“看不见的盲区”:复杂业务场景下,人类难以穷举所有异常…

No.35 Element对象属性、Element获取元素位置

、 一、元素对象属性Element对象对应网页的 HTML 元素。每一个 HTML 元素,在 DOM 树上都会转化成一个Element节点对象(以下简称元素节点)。1.1 .idElement.id 属性返回指定元素的id 属性,该属性可读写.1.2 .classNameclassName 属性用来读写当前元素节点的 class 属性。 它的…

绑定元素“seriesName”隐式具有“any”类型

const book = {...actions: {mergeBook({ state, commit }, data: any) {return axios.patch(`/books/merge`, data).then((res: any) => {return res;});}}, };在typescript的编译过程中,函数的参数被提示 {变量名} implicitly has an ‘any’ type,但是笔者也不知道应该…

跨应用启动UIAbility

跨应用启动UIAbility 上篇介绍了应用内启动UIAbility,这篇介绍下应用间的启动方式 应用间UIAbility跳转使用openLink()与startAbility()两个接口均可以实现,应用间跳转主要基于应用链接进行实现(应用内界面跳转页可以通过URI的方式打开),应用链接格式scheme://host[:port]/p…

virtualbox下载安装配置

virtualbox下载安装配置 下载 https://www.virtualbox.org/ 官网 https://www.virtualbox.org/wiki/Downloads 官网下载页 https://www.filehorse.com/download-virtualbox/old-versions/ 历史版本推荐使用第三个网址即可,我这里是安装的6.1.26版本 安装 右键安…

奶龙验证app

主要加密逻辑和密文 先encrypt加密 然后进行AES/GCM/NoPadding加密 再使用base64加密 对密文解密为乱码,所以将其转换为hexAES-GCM模式 解密时需要的tag是在加密的过程中产生的 为密文的后2,4,8或16位解密 “{”的ASCII码为123encrypt加密在so层为魔改base64大概可以这么理解…

又一中国团队惊艳全球!Manus开启AI智能新篇章

大家好啊,我是仙生。 本来今天还是分享一些有意思的网站,但是早上醒来看到卡神@数字生命卡兹克又熬夜紧跟AI时事写了一篇文章,好家伙我知道这会AI圈又要爆了。 而果不其然的是,一个上午过去,AI概念股又是狂涨,DeepSeek概念股猛猛涨。 那到底咋回事呢? AI领域又现惊人突破…

使用 CloudDM 和企业微信流程化管理数据库变更审批

CloudDM 是一个专为团队协同工作打造的数据库数据管控平台。在管控数据库安全变更的过程中,为提高效率,方便用户使用,CloudDM 接入了主流 OA 协同办公系统(包括钉钉、飞书、企业微信),支持实时通知与移动办公,满足广大企业用户的实际需求。 本文将介绍如何使用 CloudDM …

从中国到全球:头部HR SaaS厂商易路助力奥佳华全球布局增强国际竞争力

作为中国人力资源SaaS领军企业,易路人力资源科技成立于2004年,20年来坚持面向全球中大型企业,以科技赋能人力资源。易路People+是为中大型企业打造的以薪酬为核心的一站式人力资源软件平台,将全球800万用户的先进管理理念与实践总结融合至标准化的SaaS平台,覆盖企业人力资…

〖大系统 观数智〗: 油气大模型部署应用策略讨论

概述:根据业务层级和专业角色部署规模适当的模型。从基础模型到行业/领域模型,再到各层级和专业模型,按照大系统观全息思维,采取逐级知识蒸馏的策略保持系统的结构完整性、一致性和协作能力,逐级缩小模型规模,同时按需分布式自组织部署,配合本地知识库等,建设全息有机系…

数字钥匙系统BLE/UWB

数字钥匙方案采用蓝牙或BLE+UWB技术实现,简称BLE/UWB。BLE即蓝牙低能耗也称低功耗蓝牙。超宽带技术是一种无线载波通信技术,它是利用纳秒级的非正弦波窄脉冲传输数据。数字钥匙是一项创新的汽车钥匙,可以通过蓝牙/UWB定位算法确认钥匙所在区域。UWB技术也可实现脚踢开行李箱…

2027年100%国产替代真的能实现吗?从金融行业看5大关键突破点

在当今数字化浪潮汹涌澎湃的时代,信息技术应用创新(信创)已成为推动我国经济社会发展的重要引擎。金融行业作为国家经济的核心,其信息化建设对于保障国家金融安全和促进经济发展具有重要意义。2027 年,随着信创产业的深入推进,金融行业有望在国产替代方面取得重大突破。今…