2009-12-17 57 views
5

,所以我有一些CSS开发商和每一个现在的工作,然后我们遇到因为CSS开发的一个做了它与其他东西相冲突已预先固定的布局问题。管理CSS冲突

我们已经使用SVN ..每个CSS家伙有他自己的css文件,他的作品有。所以我的问题是应该采取什么措施来减少:

1:布局冲突

2:增加先前写入款式可重用性。

3:减少浪费的时间,试图样式在最后的CSS合并在一起。

我真的很感谢你们提供的任何提示。

更新: 我不是CSS开发人员之一,我只是照顾后端的东西..所以请记住,我是CSS规范的总新手。

回答

2

你能做的最好的事情是责任分配方面 - 如果你都在网站的同一区域工作,你必然会有冲突的更改,只会创造,因为你会不断地对每个踩着了自己的困难别人的脚趾。

一旦你建立的样式您网站的一个共同的基准,划分网站在你们中间也只有在这些领域工作的主要领域。当需要对基线进行更改时,请将其公开化并与队友进行有关此更改的沟通,以免让人感到意外。

我不会假装,这是很容易做到 - 的东西作为一个团队的工作是整个软件开发行业还没有完全解决的一个挑战。祝你好运!

4
  1. 定义的命名约定为你的CSS文件,以防止冲突(前缀?)
  2. 有一个可以运行之前办理入住手续(办理登机手续测试)的自动化流程看到任何潜在的冲突
  3. 讨论你会添加什么(代码审查?),并避免冲突

我不知道任何命名空间,你可以做,以避免CSS样式表名称冲突,所以,我建议那些。他们是许多大公司已经做的事情。

4

一个好的起点是禁止在特定的css文件中使用通用标签。每个开发人员应该只使用类和ID。所有通用标签应在所有页面上包含第一个,以便特殊标签可以稍后覆盖它们。

更改一般标签应该比更改每个开发人员文件需要更多计划。

与一般的标签我的意思是

div { 
    /* affects all divs */ 
} 

每个开发人员都应该只做

div.something { 
    /* potentially overwrite defaults for div */ 
} 

和HTML文件应该像

link href="general.css" 
link href="dev1.css" 
link href="dev2.css" 
1

其他所有的很好的答案,但我会补充一点:强烈鼓励在选择器中使用ID。从长远来看,识别重要元素通常会带来收益,因为它可以实现更好的可测试性和更少的冲突。

CSS实例:

#myid selector { ... } 
#myotherid selector { ... } 

一般风格确实应该在每个人管理,如果可能的话顶级或普通样式表。