JSX基本语法中关于react如何写css样式主要有三种方法

1、基于class --(className)

基于className ,通过className在style中给该class名的DOM元素添加样式

 <style>
.title{
color:blue;
}
</style> <div id='app'></div>
//创建一个叫App类,继承(extends)了react中创建组件的方法(component)
class App extends React.Component{
constructor(props){
super(peops)
}
render(){ //类里面负责构建HTML的位置,render渲染
return( //返回HTML结构
<div className="title">高版本</div> )
}
} //将虚拟DOM以组件标签的形式渲染到id为'app'的真实DOM之间
ReactDOM.render(<App/>,document.getElementById('app'))

2、基于inner css (facebook 主张的方式) 行间样式(json)

Facebook主张的是行间样式,直接给对应的DOM元素添加style属性,遵循react的规则,写在{  }当中。

 <div id='app'></div>

 class App extends React.Component{
constructor(props){
super(peops)
}
render(){
return( <div style={{color:'red'}}>hello 行间样式</div> )
}
} //将虚拟DOM以组件标签的形式渲染到id为'app'的真实DOM之间
ReactDOM.render(<App/>,document.getElementById('app'))

3、原型链和全局变量

可以通过定义全局变量的方法来定义一个css样式,适用该样式的DOM元素可直接调用。

原型链中需要注意添加样式的位置,调用时通过this,this指向该组件

<div id='app'></div>
//全局样式方法
var color={color:'red'} class App extends React.Component{
constructor(props){
super(peops)
}
render(){
return(
<div style={color}>react全局行间样式</div>
//this 指向组件本身
<div style={this.col}>原型样式</div>
)
}
}
//原型链样式的写法,在创建完以及渲染中间的位置添加原型上的样式
App.prototype.col={
color:pink
} //将虚拟DOM以组件标签的形式渲染到id为'app'的真实DOM之间
ReactDOM.render(<App/>,document.getElementById('app'))

以上是react中写css样式的三种方式,有什么遗漏或者不正确的地方欢迎大家指正。

react中怎么写css样式?的更多相关文章

  1. Vue为v-html中标签添加CSS样式

    在最近的vue项目中遇到的问题:v-html渲染的富文本,无法在样式表中修改样式: <template> <div class="msgHtmlBox" v-ht ...

  2. 通过node.js读取html页面及其页面中引入的css样式

    Node 是什么? Node 是一个基于Chrome V8 引擎的JavaScript 运行环境. Node 不是一种独立的语言.Node不是 JavaScript 框架, Node是一个除了浏览器之 ...

  3. react link引入外部css样式的坑

    刚开始的代码是这样的,使用react router4.x写的demo路由跳转后,页面的没有渲染,是因为没有引入外部css文件(或者说引入外部文件路径错误) <!DOCTYPE html> ...

  4. vue.cli 中使用 less 来写css样式

    vue-cli 的webpack中已配置了less,但 package.json 中没有选项,为了方便开发中使用,需安装一下: 安装方式一: npm install less less-loader ...

  5. 在React中修改antd的样式

    1.在Component的Radio中加个style={radioStyle}. <RadioGroup> <Radio style={radioStyle} value={}> ...

  6. 工作中积累整理-CSS样式表(一)

    [layout] clear:该属性的值指出了不允许有浮动对象的边. 默认值:none none: 允许两边都可以有浮动对象 both: 不允许有浮动对象 left: 不允许左边有浮动对象 right ...

  7. Vuejs使用scoped(私有) style为v-html中标签添加CSS样式

    最近使用Vue框架的时候遇到一个问题,就是后台把数据写好了,而且写好的数据的某些内容是html格式的,使用Vue框架的v-html虽然可以很简单的就把数据转换成html的标签渲染在页面上,但是有些样式 ...

  8. PHP内写css样式

    <1>php的两种输出方式 1,echo: 2,print; 栗子: <?php echo:"你好,我的名字是LHH"; print:"你好,我的名字是 ...

  9. JavaScript中批量设置Css样式

    设置 input 元素的  属性: document.getElementsByTagName("INPUT")[0].setAttribute("属性",&q ...

随机推荐

  1. jeecg根据模板自定义导出

    //1.获取模板的路径: String lujing = request.getSession().getServletContext().getRealPath("/")+ &q ...

  2. python之scrapy初探

    1.知识点 """ Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取 Scrapy模块: 1.schedul ...

  3. RabbitMQ学习之:(九)Headers Exchange (转贴+我的评论)

    From: http://lostechies.com/derekgreer/2012/05/29/rabbitmq-for-windows-headers-exchanges/ RabbitMQ f ...

  4. Latex新手学习

    1.Latex 套装下载安装 http://www.ctex.org/CTeXDownload 选择镜像稳定版 下载安装后 2.一个简单的例子 (1)打开WinEdt (2)新建一个文档 \docum ...

  5. Linux高级命令 ==> find、grep、sed、awk

    一.find find命令用来在指定目录下查找文件.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进行显示. 语法 find path ...

  6. CentOS7或CentOS8 安装VirtualBox Guest Addon缺少kernel-headers的解决办法

    CentOS7或CentOS8 在Oracle VM VirtualBox中安装Guest Addon时,如果缺少kernel-headers和相应的编译库,会提示出错. "kernel h ...

  7. ToolBar跟随键盘弹出和隐藏

    实现效果如下: 代码实现如下: // // ViewController.m // PopToolBarDemo // // Created by 思 彭 on 2017/7/20. // Copyr ...

  8. 【使用新版mysql驱动的改变】---记忆犹新

    关于 版本的问题: 之前安装数据库的时候  安装的mysql 8.0  脚本文件来自5.7 的数据库 maven版本3.5.3 jdk1.8 tomcat 9 跑maven项目的时候  遇到各种问题 ...

  9. C# WindowService 安装和卸载

    安装脚本 install.bat 内容 @echo 安装WindowService%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\installutil ...

  10. Linux核心系统命令

    关机,重启: shutdown -h now:关机 shutdown -r now:重启 文件和目录操作命令: pwd:显示当前所在路径 cd:切换目录 cd - :切换到上一次所在路径 cd ~:切 ...