一套代码搞定移动端pc端-tailwind 学习(一)

继承苔藓
• 阅读 6342

前言:
最近两天搭建了自己的博客,然后一直在做优化,现在看起来,pc端已经勉强可以还阔以,但是完全没有做移动的兼容,想分享给朋友看,自己都嫌丑,于是开始看移动端的兼容。

目标:在一个项目内实现两端适配

看网上有的方案是,pc一套程序,移动端一套程序,两端来回跳,这种方式个人感觉不是好,而且项目体量小,开多个项目比较复杂。还有些其他方案大多是 pxtorem方案,也在我的项目上操作了,在同一个项目中也要写多套css,还有利用媒体查询来做的,都感觉不是很方便。

想到nuxt创建的项目demo,就是支持pc端和移动端的,看下它是如何适配的。说干就干,创建一个项目运行起来
pc页面
一套代码搞定移动端pc端-tailwind 学习(一)
移动端页面
一套代码搞定移动端pc端-tailwind 学习(一)

多么完美?感觉好香,赶紧查看它的源码:
一套代码搞定移动端pc端-tailwind 学习(一)
看了一眼源码,发现了它的小秘密。嘿嘿,它的样式,都是这个东西
一套代码搞定移动端pc端-tailwind 学习(一)

赶紧去看看这玩意儿https://tailwindcss.com/

看到官网,哇!好nice,赶紧查看文档:https://www.tailwindcss.cn/docs

哇!文档好全~~~

本来之前我css 就不是很好,感觉这个阔以帮到我完成布局和适配,好吧,开始撸~

安装依赖

本文采用yarn 方式安装:

yarn add -D @nuxtjs/tailwindcss tailwindcss@npm:@tailwindcss/postcss7-compat @tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

nuxt.config.js 文件中添加模块

// nuxt.config.js
export default {
  buildModules: ['@nuxtjs/tailwindcss']
}

项目根目录下创建配置文件

npx tailwindcss init

生成的默认文件,配置参数了解 配置

module.exports = {
  purge: [],
  darkMode: false, // or 'media' or 'class'
  theme: {
    extend: {},
  },
  variants: {
    extend: {},
  },
  plugins: [],
}

tailwind 由于写了很多样式,所以包很大,但可能我们没有使用到,所以在正式发布的时候需要优化,修改配置文件

module.exports = {
  purge: [
    './components/**/*.{vue,js}',
    './layouts/**/*.vue',
    './pages/**/*.vue',
    './plugins/**/*.{js,ts}',
    './nuxt.config.{js,ts}',
  ],
  darkMode: false, // or 'media' or 'class'
  theme: {
    extend: {},
  },
  variants: {
    extend: {},
  },
  plugins: [],
}

根目录下新建文件./assets/css/tailwind.css,内容如下

/* ./assets/css/tailwind.css */
@tailwind base;
@tailwind components;
@tailwind utilities;

此时运行 yarn dev ,就可以使用tailwind了,
tailwind 还很贴心的准备了一个样式预览的页面

一套代码搞定移动端pc端-tailwind 学习(一)
此时我们的安装就完成了,接下来就是学习如何使用了
一套代码搞定移动端pc端-tailwind 学习(二)

点赞
收藏
评论区
推荐文章
Easter79 Easter79
3年前
vue 支付密码组件
vue支付密码组件我们要做一个类似京东、支付宝支付时的6位密码组件,效果如下。!(https://oscimg.oschina.net/oscnet/up2a8038f271d1d5b909b0e3ce0c1d6fb4c8a.png)专门为PC端写的。移动端的很多框架基本都已经有了,而且实现逻辑会比pc简单,
Chase620 Chase620
4年前
vue-cli3.0结合lib-flexible、px2rem实现移动端适配,完美解决第三方ui库样式变小问题
vuecli3.0结合libflexible、px2rem实现移动端适配,完美解决第三方ui库样式变小问题公司最近做的一个移动端项目从搭框架到前端开发由我独立完成,以前做移动端适配用的媒体查询,这次想用点别的适配方案,然后就采用了vuecli3.0结合libflexible、px2rem实现移动端适配的方案,开发过程中也遇到一些坑,自己选的方案自己
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
E聊SDK
2.移动客户端简介:E聊SDK提供了一个基本的移动客户端Demo源码,通过编译该客户端,可以接入E聊服务器,实现单聊/群聊等功能。移动客户端使用ReactNative技术开发,适配了Android,ios,移动网页等三个平台,实现使用一套代码适配三个平台,大大降低了代码开发量。WEB客户端源码包含了两部分,一部分是核心SDK(使用TypeScript
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
AutoJS介绍
主流的脚本工具,有按键精灵,TC,易语言等,但是都有一定的局限。易语言的功能很强大,但是在移动端却没有对应的工具,虽然可以借助安卓模拟器,或者TotalControl工具,在PC机上运行安卓系统,但是把坐标写死的方法还是不太好,尤其是换了手机,屏幕大小不兼容,另外,还要占用一台电脑来运行程序,不划算。 按键精灵在移动端也有开发工具,安
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Easter79 Easter79
3年前
TypeScript系列1
1\.简介  随着PC端快速向移动端迁移,移动(体验)优先的概念也越来越响。由于ReactJS目前移动端仅仅支持iOS,因此移动端Web开发框架只能选择:AngularJS/Angula2Ionic框架Cordova。想要学习好Angula2以及阅读其代码,就必须了解和学习TypeScript,也因此需要学习好ES6以
Stella981 Stella981
3年前
CSS实现文字两端对齐
最近的项目遇到了这样的需求:(要求标题部分不管文字多少,都必须两端对齐)如下图:!(https://oscimg.oschina.net/oscnet/6e151291c0c55e2a231d00ec198d6c5be11.png)当时也没有多想直接使用‘&ensp;’进行代替,毕竟产品同学想快一点看到效果,不敢怠慢!不过到第二个页面就傻眼了
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
4个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
继承苔藓
继承苔藓
Lv1
独在异乡为异客,每逢佳节倍思亲。遥知兄弟登高处,遍插茱萸少一人。
文章
6
粉丝
0
获赞
0