怎么在CSS内自由定义变量?
动态创建了一组div列表,类似于这样<divid="div1">内容1</div><divid="div2">内容2</div><divid="div3">内容3</di...
动态创建了一组div列表,类似于这样
<div id="div1">内容1</div>
<div id="div2">内容2</div>
<div id="div3">内容3</div>
...
现在我想让id以奇数结尾的div背景为红色,id以偶数结尾的div背景为蓝色,如此交替,怎样在CSS里实现? 展开
<div id="div1">内容1</div>
<div id="div2">内容2</div>
<div id="div3">内容3</div>
...
现在我想让id以奇数结尾的div背景为红色,id以偶数结尾的div背景为蓝色,如此交替,怎样在CSS里实现? 展开
6个回答
展开全部
用伪类:nth-child就可以做到了,不过你的这些DIV需要有一个父级元素,例如下面这样:
<div class="container">
<div id="div1">内容1</div>
<div id="div2">内容2</div>
<div id="div3">内容3</div>
...
</div>
然后在CSS里面只要作下面的定义就行了:
.container:nth-child(2n-1) {background:red;}
.container:nth-child(2n) {background:blue;}
这是一个CSS3的样式,如果需要让它兼容IE8及以下浏览器的话,就要引入jquery库和一个js小插件,可以用下面的写法:
<script type="text/javascript" src="jquery.min.js"></script>
<!--[if (gte IE 6)&(lte IE 8)]>
<script src="selectivizr.js"></script>
<![endif]-->
其中selectivizr.js这个百度一下就能找到的,是一个很小的JS文件,专门解决一些CSS3下的选择器不兼容早期浏览器的问题的。
<div class="container">
<div id="div1">内容1</div>
<div id="div2">内容2</div>
<div id="div3">内容3</div>
...
</div>
然后在CSS里面只要作下面的定义就行了:
.container:nth-child(2n-1) {background:red;}
.container:nth-child(2n) {background:blue;}
这是一个CSS3的样式,如果需要让它兼容IE8及以下浏览器的话,就要引入jquery库和一个js小插件,可以用下面的写法:
<script type="text/javascript" src="jquery.min.js"></script>
<!--[if (gte IE 6)&(lte IE 8)]>
<script src="selectivizr.js"></script>
<![endif]-->
其中selectivizr.js这个百度一下就能找到的,是一个很小的JS文件,专门解决一些CSS3下的选择器不兼容早期浏览器的问题的。
展开全部
如果是IE下的话,你倒是可以试试这样定义CSS
div {
background-color:expression(parseInt(this.id.replace(/\D/gi,''))%2==0?'#0000FF':'#FF0000');
}
但不是所有浏览器都支持CSS中使用expression的
div {
background-color:expression(parseInt(this.id.replace(/\D/gi,''))%2==0?'#0000FF':'#FF0000');
}
但不是所有浏览器都支持CSS中使用expression的
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不要用id 用class
<div class="line">内容1</div>
<div class="line">内容2</div>
<div class="line">内容3</div>
.line:nth-child(odd) { background-color: red; }
.line:nth-child(even) { background-color: blue; }
IE版本低于9不支持:nth-child
<div class="line">内容1</div>
<div class="line">内容2</div>
<div class="line">内容3</div>
.line:nth-child(odd) { background-color: red; }
.line:nth-child(even) { background-color: blue; }
IE版本低于9不支持:nth-child
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
css里面无法实现,只能自己手动设置奇数偶数div的背景色
要想自动实现,需要用js
要想自动实现,需要用js
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
.line:odd { background-color: red; }
.line:even { background-color: blue; }
IE6下需要插入一张类库才能使用
.line:even { background-color: blue; }
IE6下需要插入一张类库才能使用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询