2 f455176715 f455176715 于 2015.07.15 16:24 提问

用eclipse开发web时导入本地bootstrap.css出现问题
 <link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css">

上面这句是使用在线方式加载css框架,一切正常。

然后被告知不能用这种方式,要使用本地资源
于是我把bootstrap.min.css文件放到项目根目录下后,尝试了以下N种方法,结果都不能正确加载css文件导致显示出的网页不正常(没有样式):

 <link rel="stylesheet" href="bootstrap.min.css">
 <link rel="stylesheet" href="./bootstrap.min.css">
 <link rel="stylesheet" href="<%=request.getContextPath()%>/bootstrap.min.css">
 <link rel="stylesheet" href="${pageContext.request.contextPath}/bootstrap.min.css">

甚至当我使用绝对路径时,也不能加载本地的css文件!:

 <link rel="stylesheet" href="D:/bootstrap-3.3.5-dist/css/bootstrap.min.css">

崩溃了!这个问题到底出在哪里?为什么只有用在线加载方式时可以正常显示网页,而使用其他各种办法,甚至是指定绝对路径时,也无法正常加载?
求大神指点一下菜鸟

6个回答

zja0918
zja0918   2015.07.15 16:43
已采纳

通常你如果目录结构为:
webapp
>static
bootstrap.css
>WEB-INF
index.jsp
css文件路径:webapp/static/bootstrap.css
JSP页面路径:webapp/WEB-INF/index.jsp
那么你在页面导样式应为:

 <link rel="stylesheet" href="<%=request.getContextPath()%>/static/bootstrap.min.css">
f455176715
f455176715 我刚才又试了下,把css文件放在WEB-INF目录下时,即使路径正确也不能加载。是因为静态资源不能和jsp页面放在同一个目录下吗?WEB-INF这个目录为什么会限制对静态资源的访问?
2 年多之前 回复
f455176715
f455176715 问题解决了,我把css文件放在WEB-INF目录下,把它拉出来到webapp目录下后,总算能正确导入了!3Q
2 年多之前 回复
f455176715
f455176715   2015.07.15 16:25

好奇怪代码都去哪儿了

zja0918
zja0918   2015.07.15 16:21

有可能:
1、你的样式路径不对
2、你页面代码有错

建议楼主贴下代码

f455176715
f455176715 更新了!好吧新人第一次发帖连代码都不会正确写入,感觉自己萌萌哒
2 年多之前 回复
f455176715
f455176715 我原帖中帖了代码啊,为什么发出来没有代码
2 年多之前 回复
zja0918
zja0918   2015.07.15 16:30

你可以贴下关键代码,另外你要看下,你的web项目是不是有过滤器,然后,把静态资源也给过滤了!
伪代码,你参考一下

default
.js
.css

f455176715
f455176715 应该去哪个文件里查看是否有过滤器?web.xml吗
2 年多之前 回复
zja0918
zja0918   2015.07.15 16:34

测试下代码能不能出来 ... ..

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>
u012051392
u012051392   2015.07.15 19:52

在web工程下的webroot下建一个文件css,把你下载的bootstrap的css文档放进去,然后在你要用到的js页面引用即可。

Csdn user default icon
上传中...
上传图片
插入图片