我的jsp没有看到CSS

时间:2014-05-15 19:22:48

标签: html css jsp tomcat

我的项目结构:

folders

的hello.jsp:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
    <title>Title</title>
    <meta charset="utf-8">
    <link href="<c:url value="/resources/myStyle.css" />" rel="stylesheet">
</head>
<body>
<h1>Text</h1>
<p>Text.</p>
</body>
</html>

myStyle.css:

body {
    font-family: Arial, Verdana,  sans-serif;
    font-size: 11pt;
    background-color: #f0f0f0;
    color: #333;
}
h1 {
    color: #a52a2a;
    font-size: 24pt;
    font-family: Georgia, Times, serif;
    font-weight: normal;
}
p {
    text-align: justify;
    margin-left: 60px;
    margin-right: 10px;
    border-left: 1px solid #999;
    border-bottom: 1px solid #999;
    padding-left: 10px;
    padding-bottom: 10px;
}

有人可以解释一下为什么css无效吗? 我使用Intellij IDEA作为IDE和Tomcat。

但这有效:

<style>
        <%@include file="/resources/myStyle.css" %>
</style>

1 个答案:

答案 0 :(得分:1)

只需尝试任何一个。所有这些都是{strong>相对路径相对于webapp文件夹。

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

OR

<link rel="stylesheet" type="text/css" 
                href="<%=application.getContextPath() %>/resources/myStyle.css" >

OR

<jsp:directive.include file="/resources/myStyle.css" />

JSP - 包含指令

include指令中的文件名实际上是相对URL 。如果只指定没有关联路径的文件名,JSP编译器会假定该文件与JSP位于同一目录中。

include指令用于在转换阶段期间包含文件。该指令告诉容器在转换阶段将其他外部文件的内容与当前JSP合并。您可以在JSP页面的任何位置编写include指令。