如何将CSS文件加载到jsp中

时间:2011-09-12 01:46:57

标签: java jsp-tags

我创建了一个jsp页面,如下所示:

<%@ page contentType="text/css" %>
<html>
<head>
<title>Login page</title>
<link href="/css/loginstyle.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1> India welfare</h1>
<p> welcome </p>
</body>
</html>

并将其命名为 login.jsp

我还创建了一个名为loginstyle.css的css文件,.css文件的代码如下:

body
{
background-color:#d0e4fe;
}
h1
{
color:orange;
text-align:center;
}
p
{
font-family:"Times New Roman";
font-size:20px;
}

css和jsp的目录结构如下: 。strong文件的 webcontent / welfare_web / css jsp文件的 webcontent / welfare_web / login

编程编辑器 eclipse ,我使用的服务器是 tomcat 7.0 。当我尝试使用tomcat服务器运行login.jsp文件时。 css文件没有显示任何效果。我的意思是输出是普通文本,而不是CSS文件。

请帮助我如何使.css文件生效jsp文件。

6 个答案:

答案 0 :(得分:30)

css href链接不正确。改为使用相对路径:

<link href="../css/loginstyle.css" rel="stylesheet" type="text/css">

答案 1 :(得分:27)

你可以这样写。这适用于无论何时更改上下文路径,您都不需要修改jsp文件。

<link rel="stylesheet" href="${pageContext.request.contextPath}/css/styles.css" />

答案 2 :(得分:9)

我使用这个版本

for name, value in globals().deepcopy().items():
    print(name, value)

答案 3 :(得分:7)

我也有同样的问题。然后我意识到MainPageServlet中的 @WebServlet注释中的urlPatterns参数包含“/”,因为如果用户输入 www.site.com/ <部分,我想转发到MainPage / em>。当我尝试从浏览器打开css文件时,网址是www.site.com/css/desktop.css,但页面内容是THE PAGE MainPage.jsp 。所以,我删除了“/”urlPattern,现在我可以使用一种最常见的解决方案(${pageContext.request.contextPath}/css/desktop.css)在我的jsp文件中使用CSS文件。 确保您的servlet不包含“/”urlPattern。 我希望这对你也有用, - Axel Montini

答案 4 :(得分:0)

这就是像魅力一样对我有用的东西

<link href="<c:url value='/static/css/bootstrap.css' />" rel="stylesheet"></link> 

答案 5 :(得分:0)

如果一切看起来都正确,尽管它仍然不起作用,我邀请您像这样加载 web.xml 中的静态文件

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/includes/*</url-pattern>
</servlet-mapping>

之后

<!-- bootstrap css -->
<link rel="stylesheet" type="text/css" href="/includes/asserts/css/bootstrap.min.css"/>