2014-10-16 60 views
0

我有一个完成(旧)页面,现在我想添加一个启动导航栏。防止旧的css文件干扰bootstrap导航栏

第一步是在引导样式文件中设置一个包装器,以免打扰旧网站。 这是通过少做,工作很好。

但另一个问题是,旧网站的CSS文件干扰导航栏的CSS。

导航栏包含这样的:

<div id="navbar-wrapper"> 
    -- navbar -- 
</div> 

的bootstrap.less文件,如:

#navbar-wrapper { 
    -- all bootstrap things --- 
} 

jsFiddle demo

有没有办法阻止对方的css文件打扰navbar(改变旧的css或包括通过iframe的导航栏对我来说是没有解决办法的)

+1

您可以发布在小提琴的代码中,有一个选项,添加bootstrap.css – 2014-10-16 19:24:52

+0

我抄少compilied引导文件卡列斯引导-less.css: http://jsfiddle.net/Zoker/ek7chqvu/ 在这里你可以看到问题 – Zoker 2014-10-16 19:34:05

+0

1)我会确保所有的navbar类都正确地被你的id“scoped”,2)更重要的是,旧的样式表的特殊性可能会泄漏到你的导航栏样式中,已经正确“范围”引导样式。 – hungerstar 2014-10-16 19:35:09

回答

2

您有旧的CSS泄漏到您的新CSS中。从你的jsFiddle我可以看到,common.css的类定义了.dropdown,它也在Bootstrap的CSS中定义。这是打破你的布局。您需要重置或取消.dropdown的早期定义所定义的内容,以解决您遇到的显示问题。

例,按您的jsfiddle:

#mainNavbar .dropdown { 
    position: static; 
    left: auto; 
    top: auto; 
    z-index: auto; 
    border: 0; 
    border-radius: 0; 
    padding: 0; 
    margin: 0; 
} 

更新的jsfiddle:http://jsfiddle.net/ek7chqvu/2/

注: ID #mainNavbar如果 “复位” .dropdown类的定义不需要CSS的.dropdown类中定义后在common.css

+0

伟大的作品:) 你能告诉我,为什么没有引导样式在酒吧? 我不是指结构,我的意思是像颜色... – Zoker 2014-10-16 21:03:02

+0

如果你谈论导航栏项目的字体大小,颜色和背景颜色,那么它是同样的问题。字体大小由第59行的'common.css'中的'body'设置,背景色由第57行中的'colour.css'中的'.navbar'设置,它看起来像你自己设置的链接颜色'#mainNavbar a'。这是否清除了什么? – hungerstar 2014-10-16 21:43:23

+1

谢谢你的回答:)问题是,我有直接在导航栏中的id和那里的#mainNvabar .navbar无法更改导航栏的样式。所以我只是用该ID包装了导航栏。 – Zoker 2014-10-17 06:00:17