React如何使用styled-component

2023-10-26

首先需要安装style-component 在控住台输入npm install styled-component --save
全局如何使用呢?
在index.js中引入style.js,以下是style.js中的代码(其中使用了reset.css,目的为了在所有浏览器上作统一)

import { createGlobalStyle } from 'styled-components'

export const GlobalStyle=createGlobalStyle `
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
   border-collapse: collapse;
   border-spacing: 0;
}
`

如何只针对组件进行使用呢?
首先同样需要在相对应的组件引入import styled from 'styled-components';
然后如果你需要创建一个css组件,那么就可以在style.js中创建并且在需要使用的地方使用

//例如这里我需要创建一个HeaderWapper的组件,在style.js中需要
export const HeaderWapper = styled.div`
    background-color: #fff;
    border-color: #f0f0f0;
    position: relative;
    height: 58px;
    border-bottom:1px solid #f0f0f0;
`;
//然后在需要使用的组件中引入
import {
    HeaderWapper
} from './style';
//最后在需要使用的地方使用
class Header extends Component{
    render() {
        return (
            <HeaderWapper>
            </HeaderWapper>
        )
    }
}

如果需要在组件中单独设置class样式的话可以使用&.class名字来定义:

//首先引入import {
    HeaderWapper,
    Nav,
    NavItem
} from './style';
//然后在需要使用的地方使用,注意这里定义不能直接用class,需要用className
class Header extends Component{
    render() {
        return (
            <HeaderWapper>
                <Nav>
                    <NavItem className='left active'>首页</NavItem>
                    <NavItem className='left'>下载APP</NavItem>
                    <NavItem className='right'>登录</NavItem>
                    <NavItem className='right'>Aa</NavItem>
                    <NavSearch></NavSearch>
                </Nav>
            </HeaderWapper>
        )
    }
}
//在style.js中
export const HeaderWapper = styled.div`
    background-color: #fff;
    border-color: #f0f0f0;
    position: relative;
    height: 58px;
    border-bottom:1px solid #f0f0f0;
`;
export const Nav = styled.div`
    width:960px;
    height: 100%;
    margin: 0 auto;
    padding-right: 70px;
    box-sizing:border-box;
`;
export const NavItem = styled.div`
    line-height: 56px;
    padding: 0 15px;
    font-size: 17px;
    color:#333;
    &.left{
        float:left;
    }
    &.right{
        float:right;
        color:#969696;
    }
    &.active {
        color:#ea6f5a;
`;

如何修改input的placeholder的值和样式呢?

export const NavSearch = styled.input.attrs({
    placeholder: '搜索'
})`
    width: 160px;
    height:38px;
    border:none;
    outline:none;
    margin-top:9px;
    border-radius:19px;
    padding: 0 20px;
    box-sizing=border-box;
    background: #eee;
    font-size: 14px;
    margin-left:20px;
    &::placeholder {
    color: #999;
`;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React如何使用styled-component 的相关文章

  • React中的“计算属性”

    React中的 计算属性 相信许多学习过vue的小伙伴对计算属性都不陌生吧 计算属性能帮我们数据进行一些计算操作 计算属性是依赖于data里面的数据的 在vue中只要计算属性依赖的data值发生改变 则计算属性就会调用 那React中也有计
  • React + Umi + Dva + Antd 简述 及创建项目过程简述

    React 你的第一个组件 React React是前端三大主流框架之一 你可以在React里传递多种类型的参数 如声明代码 帮助你渲染出UI 也可以是静态的HTML DOM元素 也可以传递动态变量 甚至是可交互的应用组件 安装react框
  • css in js开发利器 - styled-components(样式组件)

    styled components 是一个常见的 css in js 类库 和所有同类型的类库一样 通过 js 赋能解决了原生 css 所不具备的能力 比如变量 循环 函数等 注意 有时候 React 版本和 styled componen
  • React仿写网易云音乐项目

    文章目录 一 项目功能说明 二 最终效果 三 文件目录结构说明 四 项目技术栈 五 核心技术 1 配置项目别名 craco craco 2 使用reset css进行 css 重置 3 使用CSS Sprites 精灵图 4 使用 memo
  • react项目中使用react-dnd实现列表的拖拽排序

    现在有一个新需求就是需要对一个列表 实现拖拽排序的功能 要实现的效果如下图 可以通过 react dnd 或者 react beautiful dnd 两种方式实现 今天先讲下使用react dnd是如何实现的 github地址 https
  • React的State Hook用法详解

    一 State Hook是啥 State Hook 就是指 useState 这个特殊函数 让你不用编写class 就可以使用state特性 换言之就是让 函数组件 拥有 state 特性 对数据进行动态更新 二 class中的state
  • 对 React Hook的闭包陷阱的理解,有哪些解决方案?

    hooks中 奇怪 其实符合逻辑 的 闭包陷阱 的场景 同时 在许多 react hooks 的文章里 也能看到 useRef 的身影 那么为什么使用 useRef 又能摆脱 这个 闭包陷阱 搞清楚这些问题 将能较大的提升对 react h
  • react基础--组件通讯:props基础、子传父、父传子、兄弟组件通讯、context跨级组件、props进阶

    目录 一 props基础 1 1 概述 1 2 函数组件通讯 1 2 1 基本用法 1 2 1 对象数据传递 1 3 类组件通讯 1 4 props的特点 二 组件通讯三种方式 2 1 父传子 2 2 子传父 2 3 兄弟组件通讯 三 co
  • chrome浏览器安装redux-devtools调试工具

    chrome浏览器安装redux devtools调试工具 1 点击进入https www chromefor com 2 在搜索框搜索redux 3 找到最新版本 Redux DevTools v2 17 0 进行下载 4 选择下载线路
  • react组件状态同步-状态提升

    假设定义组件TemperatureInputSon import React from react class TemperatureInputSon extends React Component constructor props su
  • Ant Design Pro从零到一(认识AntD)

    废话 在我们第一次接触AntD的时候 会遇到两个东西 一个是Ant Design 另一个是Ant Design Pro 他们的官网分别是 Ant Design 一套企业级 UI 设计语言和 React 组件库 Ant Design Pro
  • React解密:React Hooks函数之useCallback和useMemo

    之所以将useCallback和useMemo放到一起 从某种意义上说 他们都是性能优化的始作俑者 他们也有很多的共性 我们先来回顾一下class组件性能优化的点 调用 setState 就会触发组件的重新渲染 无论前后 state 是否相
  • umi 后台管理demo

    umi 后台管理demo umi react ts dva antd egg 有待优化 简单的前后端管理demo 接口提供增删查改 前端也有相应功能 github代码 https github com huiBuiling ql admin
  • React class组件、react-hook函数组件分别实现五子棋

    react class类组件 react hook函数组件分别实现五子棋 前言 使用create react app脚手架简单搭建 不用安装其他依赖 纯 js css实现 这里就只是简单的说明目录结构和思路 具体的代码实现请转到 Githu
  • ant design pro 代码学习(七) ----- 组件封装(登录模块)

    以登录模块为例 对ant design pro的组件封装进行相关分析 登录模块包含基础组件的封装 组件按模块划分 同类组件通过配置文件生成 跨层级组件直接数据通信等 相对来说还是具有一定的代表性 1 登录模块流程图 首先 全局了解一下登录模
  • quill编辑器使用

    官方git https github com quilljs quill 官方文档 https quilljs com 中文文档 https kang bing kui gitbook io quill 编辑器是个正经编辑器 就是文档太不正
  • React事件处理及事件流

    React事件处理 React事件处理是通过将事件处理器绑定到组建上处理事件 事件触发的同时更新组建的内部状态 内部状态更新会触发组件的重绘 React 元素的事件处理和 DOM 元素的事件处理很相似 但语法上的略有区别 在React中事件
  • reactJS 干货(reactjs 史上最详细的解析干货)

    一 State和 Props state是状态机 应该包括 那些可能被组件的事件处理器改变并触发用户界面更新的数据 譬如需要对用户输入 服务器请求或者时间变化等作出响应 不应该包括 计算所得数据 React组件 在render 里使用pro
  • React Jsx转换成真实DOM过程?

    面试官 说说React Jsx转换成真实DOM过程 一 是什么 react 通过将组件编写的 JSX 映射到屏幕 以及组件中的状态发生了变化之后 React 会将这些 变化 更新到屏幕上 在前面文章了解中 JSX 通过 babel 最终转化
  • React Jsx转换成真实DOM过程?

    面试官 说说React Jsx转换成真实DOM过程 一 是什么 react 通过将组件编写的 JSX 映射到屏幕 以及组件中的状态发生了变化之后 React 会将这些 变化 更新到屏幕上 在前面文章了解中 JSX 通过 babel 最终转化

随机推荐

  • easyui datagrid columnMoving 列移动

    demo 页面 url columnMoving https github com wwwpalmercom jQuery duplicate tree master easyui datagrid columnMoving
  • c++整型与二进制的相互转化

    include
  • 打印100-200之间的所有素数。 (C语言)

    分析 判断是否是素数 1 能被1和自身整除的数是素数 2 试除法 代码 include
  • 服务器选择多大的带宽比较合适,如果遇到攻击了该怎么办

    首先要了解带宽是什么 对于服务器来说带宽分两种 上行带宽和下行带宽 上行带宽 是上传数据的速度 用户要获取到服务器程序搭建里面的内容就需要用到上传带宽 就好比搭建了网站别人要加载内容 服务器首先就要先把内容上传到用户的本地上 而这个步骤就需
  • 杰卡德系数(Jaccard Index)

    杰卡德系数 Jaccard Index 杰卡德系数 又称为杰卡德相似系数 用于比较两个样本之间的差异性和相似性 杰卡德系数越高 则两个样本相似度越高 定义 有两个集合A和B 那么这两个集合的杰卡德系数为A和B的交集除以A和B的并集 当集合A
  • VMware虚拟机启动错误(正在被占用、内部错误)等问题

    参考 VMware虚拟机启动错误 正在被占用 内部错误 等问题 作者 扫地僧 发布时间 2019 09 20 15 02 55 网址 https blog csdn net weixin 42119153 article details 1
  • Spring cache 注解详解

    spring cache注解的使用 CacheConfig 类级别的缓存注解 允许共享缓存名称 Caching 将多种缓存操作分组 Cacheable 触发缓存入口 CacahePut 更新缓存 CacheEvict 触发移除缓存 最常用的
  • 浅谈vscode以及解决官网下载速度慢的问题

    浅谈vscode VSCode 全称 Visual Studio Code 是一款由微软开发且跨平台的免费源代码编辑器 该软件支持语法高亮 代码自动补全 又称 IntelliSense 代码重构 查看定义功能 并且内置了命令行工具和 Git
  • DB-Engines 2017年8月数据库排名发布 总体走势复归平稳

    近日 DB Engines发布了2017年8月数据库排名 数据库排行 经历过此前一系列暴跌暴涨 8月数据库得分走势渐趋平缓 前二十名涨跌幅皆控制在十分以内 前十席位本月无变动 为首的三巨头自不必提 Oracle MySQL Microsof
  • Impala常见错误

    1 尽量少使用 invalidate metadata 尽量用REFRESH TABLE NAME 2 set APPX COUNT DISTINCT true 与 ndv 函数是一样的 都只是估值 Impala SQL 不支持的一个查询中
  • 计算机组成原理——存储系统の选择题整理

    存储器概述 1 存储器存取周期是指 A 存储器的读出时间 B 存储器的写入时间 C 存储器进行连续读或写操作所允许的最短时间间隔 D 存储器进行一次读或写操作所需的平均时间 解析 选C 存取周期是存储器进行连续读或写操作所允许的最短时间间隔
  • LeetCode 最热 100 题, 搜索旋转排序数组,search in rotated sorted array

    作者 Linux猿 简介 CSDN博客专家 华为云享专家 Linux C C 面试 刷题 算法尽管咨询我 关注我 有问题私聊 关注专栏 LeetCode面试必备100题 优质好文持续更新中 欢迎小伙伴们点赞 收藏 留言 目录 一 题目描述
  • 自然语言编程的尝试

    班上有30个学生 甲叫肖鹤云 乙叫李诗情 显示甲 乙的名字 这段代码明显不能运行 需要做一些修改 分配30个学生类至班 甲为班 0 乙为班 1 甲的名字为肖鹤云 乙的名字为李诗情 显示甲的名字 乙的名字 进一步转化 学生类 班 学生类 ma
  • 杨辉三角c语言实现

    在屏幕上打印杨辉三角 include
  • Spring Boot实战.Spring Boot核心原理剖析

    在上节中我们通过了一个小的入门案例已经看到了Spring Boot的强大和简单之处 本章将详细介绍Spring Boot的核心注解 基本配置和运行机制 笔者一直认为 精通一个技术一定要深入了解这个技术帮助我们做了哪些动作 深入理解它底层的运
  • VMware Workstation(虚拟机)安装英文版XP系统

    因需要写英文文档 里面的截图也要求全英文 所以打算在在原有的XP系统上安装一虚拟机 再在虚拟机里安装英文版XP系统 在此记录一下自己的安装过程 虚拟机的安装过程在此略过 首先要下载英文版XP操作系统iso镜像 本人下载网址 http www
  • pytorch实现简易回归问题

    代码部分 import torch from torch autograd import Variable import torch nn as nn import torch nn functional as F import torch
  • Excel中如何获取汉字拼音首字母

    Excel中如何获取汉字拼音首字母 在工作中 为了方便查询 排序或者编码 需要生成汉字内容信息的首字母 如果信息很多的话 一个个录入是一件很麻烦的事情 下面给大家介绍一个便捷的方法 轻松获取汉字拼音首字母信息 最终效果如下 工具 原料 Mi
  • vue3中使用webcamjs拍照

    最近做了一个考试答题的pc端vue3项目 就是pc端有人脸识别这个流程 于是熟悉了下 附上官方文档地址 https www npmjs com package webcamjs 一 第一步下载 npm i webcamjs 二 vue3中引
  • React如何使用styled-component

    首先需要安装style component 在控住台输入npm install styled component save 全局如何使用呢 在index js中引入style js 以下是style js中的代码 其中使用了reset cs