账号通
    

账号  

密码  

4091

查看

8

回复
主题:[转帖]CSS:标准下的隔行换色方法 [收藏主题] 转到:  
ks1w 当前离线

2796

主题

4

广播

1

粉丝
添加关注
级别:大一

用户积分:14338 分
登录次数:665 次
注册时间:2006/11/3
最后登录:2019/7/26
ks1w 发表于:2006/11/10 16:02:00   | 只看该作者 查看该作者主题 楼主 
科汛在线考试系统(NET)
我们以前在DW中用表格布局着我们的网页的时候常常用到一种设计手法--隔行换色。也就是新闻列表或是列表类的每隔一行就换另一个色彩这样显得很漂亮也很合适阅读。所以这种手法被广大的设计师们收入囊中作为自己的又一把工具刀。但是随着网页标准浪潮的来袭,这种设计效果慢慢变得没有了,原因主要是来自于标准化后的这种效果的实现上。

  由于标准后我们都用UL来代替了表格,代码虽然少了很多,但是好像效果也随之少了。隔行换色也遇到了瓶颈。我采用过CLASS方式来进行隔行换色:

以下是引用片段:
<ul>
  <li class="one"></li>
  <li class="two"></li>
  <li class="one"></li> 
  <li class="two"></li>
</ul>

  我们看到上面的代码所表现出来的是每行的CLASS都不一样,通过这样的方式的确可以解决隔行换色的问题,但是一直来我都被程序员告知这样写法程序没办法写。我一直很郁闷:用表格时他们是怎么写的?

  当然抱怨归抱怨,问题总是需要解决的,之后有朋友想过用JS来实现隔行换色,这种设想在网页标准研究联盟中得到了反驳,认为样式的事没必要用行为去实理,并且用JS来实现的效果并不一定有CSS来解决的好。我同意这样的见解,并且我主张的是大背景实现。什么叫大背景实现呢,意思就是说通过在父级设定背景从而使得当前级得到隔行换色或是隔N行换N色。

图片点击可在新窗口打开查看

  上图是我前几天刚完成的一个项目中的一个实例应用,大家可以看到我采用的是两行背景重复。而这个背景图是定义在UL上的而不定义在LI上。这样又使得我们少写一点代码,让代码显得更加的干净。同时这样技巧通过举一反三的思考就能做出更多很好玩的样式来,比如我们让每一行都不一样,或是让每一行都像是纸页脚卷起来一样,或是其它的什么花样,那就要看你能想出什么样的花招来了!

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
baibai 当前离线

4

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:247 分
登录次数:8 次
注册时间:2006/11/10
最后登录:2006/11/11
baibai 发表于:2006/11/10 23:41:00   | 只看该作者 查看该作者主题 沙发 

<style type="text/css"> //这个style,就是一个标签符,就像html定义字体要用到<font一样
.one{定义样式表头,就像程序中和一个函数和类
background-color:blue;功能代码他的色的定义。同样也可以写成其它的
}
.two{同上
background-color:red;同上
}
</style>
<ul>
 <li class="one" 调用刚才的函数(说类也行)>sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>

如果不这样写。也可以这样写(我第一次。我想应该可以这样写)

如<li style="font-size:12px">sample sample</li>
</ul>

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
awmust 当前离线

200

主题

0

广播

0

粉丝
添加关注
级别:二年级

用户积分:1108 分
登录次数:214 次
注册时间:2006/8/27
最后登录:2019/4/17
awmust 发表于:2006/11/10 23:34:00   | 只看该作者 查看该作者主题 藤椅 
科汛在线考试系统(NET)

就是第一行与第二行的背景同时当作一个背景文件。这样就OK了

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
alluse 当前离线

1654

主题

0

广播

0

粉丝
添加关注
级别:高一年

用户积分:2915 分
登录次数:189 次
注册时间:2006/10/25
最后登录:2008/6/8
alluse 发表于:2006/11/10 19:48:00   | 只看该作者 查看该作者主题 板凳 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
小苹果 当前离线

52

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:319 分
登录次数:16 次
注册时间:2006/11/10
最后登录:2006/12/4
小苹果 发表于:2006/11/10 19:45:00   | 只看该作者 查看该作者主题 报纸 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
inlet511 当前离线

122

主题

0

广播

0

粉丝
添加关注
级别:一年级

用户积分:1093 分
登录次数:86 次
注册时间:2006/11/2
最后登录:2010/11/29
inlet511 发表于:2006/11/10 16:28:00   | 只看该作者 查看该作者主题 地板 

能否具体点?父级是否意思是通过ul的背景设置?

另外:"我们看到上面的代码所表现出来的是每行的CLASS都不一样,通过这样的方式的确可以解决隔行换色的问题,但是一直来我都被程序员告知这样写法程序没办法写。",这句话到底什么意思啊?都晕了

象这样:<html>
<head>
<style type="text/css">
.one{
background-color:blue;
}
.two{
background-color:red;
}
</style>
</head>
<body>
<ul>
 <li class="one">sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>
 <li class="two">sample sample</li>
 <li class="one">sample sample</li>
</ul>
</body>
完全可以啊……大哥,能不能讲解的详细一点……

什么叫“大背景实现”……

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
ks1w 当前离线

2796

主题

4

广播

1

粉丝
添加关注
级别:大一

用户积分:14338 分
登录次数:665 次
注册时间:2006/11/3
最后登录:2019/7/26
ks1w 发表于:2006/11/10 16:28:00   | 只看该作者 查看该作者主题 7楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
乖宝宝 当前离线

2059

主题

0

广播

1

粉丝
添加关注
级别:高二年

用户积分:3528 分
登录次数:567 次
注册时间:2006/11/3
最后登录:2017/3/2
乖宝宝 发表于:2006/11/10 16:31:00   | 只看该作者 查看该作者主题 8楼 
科汛智能建站系统
支持一下你的共享精神
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
yangdi 当前离线

231

主题

0

广播

0

粉丝
添加关注
级别:二年级

用户积分:941 分
登录次数:46 次
注册时间:2006/9/11
最后登录:2015/5/26
yangdi 发表于:2006/11/10 16:05:00   | 只看该作者 查看该作者主题 9楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
我本寂寞 当前离线

2132

主题

7

广播

1

粉丝
添加关注
级别:高三年

用户积分:12047 分
登录次数:664 次
注册时间:2006/9/12
最后登录:2023/8/28
我本寂寞 发表于:2006/11/10 16:18:00   | 只看该作者 查看该作者主题 10楼 
科汛智能建站系统
以下是引用yangdi在2006-11-10 16:05:36的发言:
感谢分享~

你又浮水啦,潜水了好久了

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.21875秒 powered by KesionCMS 9.0