【Next】全局样式和局部样式

server/2024/9/22 15:47:06/

不同于 nuxt ,next 的样式绝大部分都需要手动导入。

全局样式

使用 sass 先安装 npm i sass -D

我们可以定义一个 styles 文件,存放全局样式。

在这里插入图片描述

variables.scss

$fs30: 30px;@mixin border() {border: 1px solid red;
}

main.scss

@use './variables' as *;$fsColor: lightgreen;
.global-style {color: $fsColor;@include border();
}

globals.css

.global-border {border: 1px solid black;
}
import MyButton from "@/components/my-button";
import Head from "next/head";
import '../styles/globals.css'
import '@/styles/main.scss'export default function Home() {return (<><Head><title>我是title</title><meta name="description" content="Generated by create next app"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="icon" href="/favicon.ico"/></Head><div className="global-style">Welcome to my website! 你好</div><MyButton/></>);
}

局部样式

可以定义一个该文件夹下的 xxx.module.css 文件:

.about-color {color: hotpink;
}
import React from 'react';
import Link from "next/link";
import styles from './page.module.css'function Page(props) {return (<><div className={styles['about-color']}>我是about页</div><Link href="/"> go to home</Link></>);
}export default Page;

同时 支持从CSS module 文件导出(export)的 Sass 变量。

app/variables.module.scss

$primary-color: #64ff00;:export {primaryColor: $primary-color;
}

app/page.jsx

import variables from './variables.module.scss'export default function Page() {return <h1 style={{ color: variables.primaryColor }}>Hello, Next.js!</h1>
}

所以从上面我们可以看出,当添加了 module 后缀的 css 将被模块化,可以直接以 一个变量 styles 的形式导入使用,否则只能使用常规的 导入 css 文件的导入样式。


http://www.ppmy.cn/server/100854.html

相关文章

AI芯片:高性能卷积计算中的数据复用

随着深度学习的飞速发展&#xff0c;对处理器的性能要求也变得越来越高&#xff0c;随之涌现出了很多针对神经网络加速设计的AI芯片。卷积计算是神经网络中最重要的一类计算&#xff0c;本文分析了高性能卷积计算中的数据复用&#xff0c;这是AI芯片设计中需要优化的重点之一&a…

旅行商问题变体:欧几里德平面中线段最小连接算法

问题描述 假设在欧几里德平面上有有限多条线段&#xff0c;如何将它们连接起来&#xff0c;形成一条最小长度的线段链&#xff1f; 首先&#xff0c;自然可以穷举所有情况&#xff0c;找到最优解。还可以采用动态规划、贪心算法找到局部最优解。 另外&#xff0c;则将其作为T…

tcpdump入门——四次挥手

客户端断开tcp连接&#xff1a; 数据包分析&#xff1a; 上面抓到的四次挥手包确实展示了 TCP 连接终止的过程&#xff0c;但观察到的包顺序和标志位可能会和经典的四次握手示例稍有不同&#xff0c;这是因为在实际网络中&#xff0c;TCP 连接的终止过程可能会有一些优化或变化…

vue2子组件调用父组件传递prop得函数

在Vue中&#xff0c;props是父组件与子组件通信的桥梁。而prop的type选项可以用来指定传入的数据类型&#xff0c;以确保数据的正确性。 当prop的type为function时&#xff0c;这意味着父组件需要传递一个函数给子组件&#xff0c;子组件可以在适当的时候调用这个函数。 以下…

LeetCode 热题100-22

相交链表 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 题目数据 保证 整个链式结构中不存在环。 注意&#xff0c;函数返…

汽车电子中间件的关键技术

汽车电子中间件的关键技术 中间件架构设计分层架构与模块化设计优势劣势 服务导向架构&#xff08;SOA&#xff09;主要特点&#xff1a;SOA在汽车电子中的应用&#xff1a;优势&#xff1a;劣势&#xff1a; 通讯协议与数据传输传统协议&#xff08;CAN、LIN&#xff09;CAN&a…

408专业课复习-数据结构

1.具体衡量、比较算法优劣的指标主要有哪两个&#xff1f;什么是时间复杂度&#xff1f;什么是空间复杂度&#xff1f; 时间复杂度T(n)&#xff1a;根据算法写成的程序在执行时耗费时间的长度。 这个长度往往也与输入数据的规模有关。时间复杂度过高的低效算法可能导致我们在…

Angular路由使用

Angular路由是Angular框架中一个非常重要的特性&#xff0c;开发者可以根据URL的不同来动态地加载和显示不同的组件&#xff0c;从而构建出单页面应用&#xff08;SPA&#xff09;。 以下是Angular路由使用的基本步骤和要点&#xff1a; 1. 安装和配置路由模块 首先&#xf…