网站建设资讯

NEWS

网站建设资讯

jsx写css样式,如何写css样式

怎么在js中给文本框添加CSS样式

在页面内用JS操作CSS除非用AJAX,但操作页面内的样式的话,是可以的。操作样式分为改变直接样式,改变className和改变cssText三种

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站制作、网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的广丰网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

一、局部改变样式

调用方法:

改变className

div id="demo"测试/div

script

document.getElementById('demo').className="test";

/script

改变直接样式

div id="demo"测试/div

script

document.getElementById('obj').style.backgroundColor="#003366";

/script

二、全局改变样式

可以通过改变外链样式的的href的值实现网页样式的实时切换

link rel = "stylesheet" type="text/css" id="css" href="firefox.css" /

span on click="javascript:document.getElementById('css').href = 'ie.css'"点我改变样式/span

CSS module和React 中的应用

由于CSS的规则是全局性的,添加任何一个样式,在全局都有效,优点是方便复用,缺点是会根据 权重的计算 造成样式冲突,非常难以管理。

有了钉子,自然就会有锤子。随着前端的发展出现了各种CSS模块解决方案,主要分两种:

一类是采用JS或者JSON 的方式写CSS,比如 jsxstyle , react-style ,虽然可以采用JS成熟方案来管理css, 但是它无法使用postcss ,sass等css预处理器,并且衍生了大批的api, 使用的代价较大。

另一类还是采用css 来写样式, 不过是通过工具生成CSS作用域的方式实现模块化,比如CSS module。常用的BEM命名技巧或者团队中约定的方案来实现命名空间从而实现模块化,不过约定总会出现问题,于是就出现了通过工具,比如webpack的css-loader根据算法,实现css 模块化。

webpack 内置的 css-loader 自带了CSS modoule, 配置如下:

create-react-app 2.0以上的版本中内置启动了CSS module, 如果需要特殊配置,则需要eject操作, 在webpack.config.js 中:

CSS module 默认采用局部样式,即给每个css 名添加上了“:local”, 对应的全局性的写法:

compose 组合样式:

对于样式复用,CSS module提供了唯一的方式 "compose":

多CSS class 的写法:

Sass 变量与JS共享

Css module 作者建议:

1.不使用选择器,只使用 class 名来定义样式

2.不层叠多个 class,只使用一个 class 把所有样式定义好

3.不嵌套

4.使用 composes 组合来实现复用

采用 classnames 来增强CSS module 在react 中的使用,类似Angular 中的样式指令:

参考链接:

js 写CSs样式

JavaScript访问修改样式表,可以方便的动态修改页面:

一、访问元素中style属性的CSS样式

这个可以直接使用style对象方便的访问,例如:

div id = "mdiv" style="background-color:blue;"..../div

访问CSS的方法是:

script type="text/javascript"

//获得元素

var oDiv = document.getElementyId("mdiv");

//访问元素的style对象,再访问对象中的属性,也可以修改属性的值,直接为他赋值

alert(oDiv.style.backgroundColor);

/script

二、访问外部定义的CSS样式(类定义的CSS样式)

这个没法使用上面的方法去访问,因为CSS数据不是存储在style属性中,它是存储在类中的。

访问方法:先取得定义类的样式表的引用,用document.styleSheets集合实现这个目的,这个集合包含HTML页面中所有的样式表,DOM为每个样式表定义一个cssRules的集合,这个集合中包含定义在样式表中的所用CSS规则(注意:Mozilla和Safasi中是 cssRules,而IE中式rules)。

例如:

style

/*第一条规则*/

div.ss{

background-color:red;

width:101px;

}

/*第二条规则*/

a.btn2{

background:url(imag/2-AccessCtl.jpg);

}

/style

访问CSS:

var ocssRules = document.styleSheets[0].cssRules||document.styleSheets[0].rules;

//访问第一条规则

alert(ocssRules[0].style.backgroundColor);

//设置值

ocssRules[0].style.width = "992px";

//访问第二条规则

alert(ocssRules[1].style.background);

//设置值

ocssRules[0].style.background = "url(imag/3-back.jpg);";

以上内容是百度出来的

javascript如何添加css类

JavaScript动态建立或增加CSS样式表,参考如下:

1、简单的方法:

document.createStyleSheet().cssText = '标签{color:red;' +  

// 这个注释只在当前JS中帮助理解,并不会写入CSS中  

'width:300px;height:150px}' +  

'.类名{……}' +  

'#ID们{……}'

2、比较完美的方法,防止重复添加,通过添加样式表ID并对其判断来实现:

if (!document.styleSheets['要建立的样式表ID如theforever']) { //先检查要建立的样式表ID是否存在,防止重复添加  

var ss = document.createStyleSheet();  

ss.owningElement.id = '要建立的样式表ID如theforever';  

ss.cssText = '标签{display:inline-block;overflow:hidden;' +  

// 这个注释只在当前JS中帮助理解,并不会写入CSS中  

'text-align:left;width:300px;height:150px}' +  

'.类名{……}' +  

'#ID们{……}'  

;  

}

如何通过js给css添加样式

选中标签,然后用style设置样式

div id="h5course"HTML5学堂(WX号),技术干货文章分享/div

script

var box = document.getElementById('h5course');

box.style.color = '#39f';

box.style.border = '2px solid #000';

/script


新闻标题:jsx写css样式,如何写css样式
文章位置:http://njwzjz.com/article/dsdopdj.html