react中怎么写css样式?
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样式?的更多相关文章
- Vue为v-html中标签添加CSS样式
在最近的vue项目中遇到的问题:v-html渲染的富文本,无法在样式表中修改样式: <template> <div class="msgHtmlBox" v-ht ...
- 通过node.js读取html页面及其页面中引入的css样式
Node 是什么? Node 是一个基于Chrome V8 引擎的JavaScript 运行环境. Node 不是一种独立的语言.Node不是 JavaScript 框架, Node是一个除了浏览器之 ...
- react link引入外部css样式的坑
刚开始的代码是这样的,使用react router4.x写的demo路由跳转后,页面的没有渲染,是因为没有引入外部css文件(或者说引入外部文件路径错误) <!DOCTYPE html> ...
- vue.cli 中使用 less 来写css样式
vue-cli 的webpack中已配置了less,但 package.json 中没有选项,为了方便开发中使用,需安装一下: 安装方式一: npm install less less-loader ...
- 在React中修改antd的样式
1.在Component的Radio中加个style={radioStyle}. <RadioGroup> <Radio style={radioStyle} value={}> ...
- 工作中积累整理-CSS样式表(一)
[layout] clear:该属性的值指出了不允许有浮动对象的边. 默认值:none none: 允许两边都可以有浮动对象 both: 不允许有浮动对象 left: 不允许左边有浮动对象 right ...
- Vuejs使用scoped(私有) style为v-html中标签添加CSS样式
最近使用Vue框架的时候遇到一个问题,就是后台把数据写好了,而且写好的数据的某些内容是html格式的,使用Vue框架的v-html虽然可以很简单的就把数据转换成html的标签渲染在页面上,但是有些样式 ...
- PHP内写css样式
<1>php的两种输出方式 1,echo: 2,print; 栗子: <?php echo:"你好,我的名字是LHH"; print:"你好,我的名字是 ...
- JavaScript中批量设置Css样式
设置 input 元素的 属性: document.getElementsByTagName("INPUT")[0].setAttribute("属性",&q ...
随机推荐
- vscode在软件内部查看html渲染效果的插件
使用方法: Usage press 'F1' and type "Show Live Server Preview" F1,然后输入Show Live Server Preview ...
- Vue + Webpack-simple 怎么修改生产环境下运行的端口?
开发环境下运行 npm run dev,默认运行在localhost:8080端口,想要修改端口,于是在"dev“后增加了--port 8081
- json-server搭建使用
项目中前端和后端通常是并行开发,为了减少等待后端接口开发的时间,我们经常需要在本地模拟后端接口用来测试前端效果.这种做法称之为构建前端Mock. 本地启动一个静态服务,将所需要的接口写成json文件, ...
- sqliteDOC创建数据库
上次刚接触SqlLite,不知道怎么创建数据库,现在做下总结: 界面和MYSQL一样,都是CMD界面,但不是在SQLite.exe中创建数据库: 首先还是说一下cmd下sqlite的使用网上已经很多了 ...
- 一百零三:CMS系统之使用sweetalert提示框优化返回结果
在base模板中引用 在修改密码的js中使用 $(function () { $('#submit').click(function (evnet) { evnet.preventDefault(); ...
- 想了解Java后端学习路线?你只需要这一张图!
前言 学习路线图往往是学习一样技术的入门指南.网上搜到的Java学习路线图也是一抓一大把. 今天我只选一张图,仅此一图,足以包罗Java后端技术的知识点.所谓不求最好,但求最全,学习Java后端的同学 ...
- Micro LED 技术详谈
一.显示技术的发展概况 1. 显示技术 顾名思义,是一种将反映客观外界事物的信息(光学的.电学的.声学的.化学等),经过变换处理,以适当形式(主要有图像.图形.数码.字符)加以显示.供人观看.分析.利 ...
- 【FFMPEG】ffmpeg 时间戳问题汇总
ffmpeg 时间戳问题汇总 http://www.cnblogs.com/loveclover/archive/2011/03/23/1993065.html 问题是这样的 用一个 VLC(流媒体客 ...
- JMeter-- ThreadGroup原理分析
JMeterEngine会驱动JMeter ThreadGroup启动Test Threads 执行测试,其本身也是一个Runnable,这里把测试驱动(JUnit或者其他类似main之类的)看作主线 ...
- pynput模块—键盘鼠标操作和监听
pynput.mouse:包含控制和监控鼠标或者触摸板的类. pynput.keyboard:包含控制和监控键盘的类. 上面提到的子包都已被引入到pynput库中.要使用上面的子包,从pynput中引 ...