如何在CSS文件中使用Java变量(例如在Eclipse Java EE项目中)。
我的意思是,当我们在JSP文件的HTML代码中使用Java代码(&lt;%... Java代码 ...%&gt; )时,可以我们在CSS文件中使用Java代码(不在JSP文件中,<style>...</style>
- 而不是内部插入(CSS How To...))。
所以,我想创建单独的样式(CSS)文件和JSP文件(导入我的样式(CSS)文件)。
我怎样才能做到这一点,这是合乎逻辑且最好的方式?
我正在使用HttpServlet类文件并使用PrintWriter.print(...)
在那里写入内部CSS代码,但它是String + String + String + ...
但是,CSS样式中有宽度和高度的必要使用变量。例如,我有这样的代码:
HTML code:
...
myPrintWritter.print
(
"<div class=\"outterBox\">\n" +
"<div class=\"innerBox\">Small Box 1</div>\n" +
"<div class=\"innerBox\">Small Box 2</div>\n" +
"</div>\n"
);
...
CSS代码:
int space = 5;
int innerBoxWidth = 50;
int outterBoxWidth = (innerBoxWidth + space + innerBoxWidth);
myPrintWritter.print("<style type=\"text/css\">\n");
...
myPrintWritter.print
(
".outterBox\n" +
"{\n" +
"width: " + outterBoxWidth + "px;\n" +
"}\n" +
"\n" +
".innerBox\n" +
"{\n" +
"width: " + innerBoxWidth + "px;\n" +
"}\n" +
);
...
myPrintWritter.print("</style>\n");
我在一个HttpServlet类文件中拥有的所有代码。现在我想分开它们(在JSP,CSS,..文件中)。
我发现我可以使用CSS变量,更确切地说,使用SASS和LESS以及可能性...... 现在我可以创建CSS和SCSS文件并在那里编写样式代码。
但是,最好只使用JAVA and CSS
代码,而不是SASS and LESS
和其他一些......
**
使用String + String + ...在HttpServlet(或JSP)中编写大量HTML和CSS代码对我来说不是问题,但它的代码输入,突出显示等问题...而且它也不合逻辑正确的方式...
谢谢大家......
答案 0 :(得分:0)
CSS不一定必须来自.css文件,可以使用任何具有可接受MIME类型的响应。因此,不知道您的用例来评估它是否是一个好主意,没有什么能阻止您使用JSP作为CSS包含。
如果你只是用它来引入这些变量,那么SASS / LESS可能会比它更值得痛苦,因为你必须设置它要动态渲染,你必须弄清楚如何以高效的方式为每个渲染发送变量。
除非您以这种方式添加大量CSS,否则在HTML中打印CSS块可能是阻力最小的路径。只使用Java作为变量值而不是整个事物,你可以使它更具可读性,因为在<% myPrintWritter.print(".outterBox { width: "+outterBoxWidth+"px; }" %>
变为.outterBox { width: <%=outterBoxWidth;%>px; }