Java 调用servlet后,导航栏css会发生变化
之前: 之后 第一个图像是登录页面,但当我单击登录按钮时,导航栏会像第二个图像一样,块之间会出现空格。当调用sevlet并具有以下代码时会发生这种情况:Java 调用servlet后,导航栏css会发生变化,java,html,css,jsp,servlets,Java,Html,Css,Jsp,Servlets,之前: 之后 第一个图像是登录页面,但当我单击登录按钮时,导航栏会像第二个图像一样,块之间会出现空格。当调用sevlet并具有以下代码时会发生这种情况: out.print("<p style='position:absolute;top:200px;left:300px;color:#CC0066;'>Sorry username or password error! </p>"); RequestDispatcher rd=request.
out.print("<p style='position:absolute;top:200px;left:300px;color:#CC0066;'>Sorry username or password error! </p>");
RequestDispatcher rd=request.getRequestDispatcher("login.jsp");
rd.include(request, response);
JSP代码是:
<div name="header" id="header">
<img id="logo" style="position:absolute; left:145px; top:10px; "src="images/logo.jpg">
<div id="menu" >
<ul>
<li id="menuli"><a id="menuA" href="index.jsp#header">Home</a></li>
<li id="menuli"><a id="menuA" href="index.jsp#services">Services</a></li>
<li id="menuli"><a class="prod" id="menuA" href="Display?course=6">Products</a>
</li>
<li id="menuli"><a id="menuA" href="index.jsp#contact">Contact</a></li>
<li id="menuli"><a id="menuA" href="index.jsp#about">About</a></li>
</ul>
</div>
</div>
它发生在任何servlet包含它之后的所有页面上
请查看图片链接。在servlet中打印
html
内容被认为是不好的做法。您可以在请求中设置属性。所以不是这个
out.print("<p style='position:absolute;top:200px;left:300px;color:#CC0066;'>Sorry username or password error! </p>");
RequestDispatcher rd=request.getRequestDispatcher("login.jsp");
rd.include(request, response);
并尝试在jsp页面中打印消息
只需将scriptlet用作
<p style='position:absolute;top:200px;left:300px;color:#CC0066;'><%=message></p>
或者使用EL
<p style='position:absolute;top:200px;left:300px;color:#CC0066;'>${message}</p>
${message}
十年来,使用scriptlet也被认为是不好的做法。看到这个了吗
希望这有帮助 修好了。我在导航栏的CSS部分有
margin:10px
。移除它,所有问题都消失了
:)CSS中的更改是由此代码引起的吗?这样行吗?答案是一般的。但是如果你按照上面的方法去做,你可以消除这个问题。我猜
position:absolute
是您代码中的问题。试着把它改成相对的,用你说的去做。但我必须在整个项目中这样做。bdw你所说的位置是什么意思:绝对是问题所在??我应该用什么来替换它?因为里面没有任何东西。margin用于div中的元素,而不是div,因为您通过servlet的响应向现有html追加了一个新段落,这导致了失真。
<p style='position:absolute;top:200px;left:300px;color:#CC0066;'><%=message></p>
<p style='position:absolute;top:200px;left:300px;color:#CC0066;'>${message}</p>