0
我有一個提交給JSP的html表單。該表單有一個用於指定背景色偏好的輸入。在JSP頁面上,我試圖使用用戶指定的背景顏色,或者如果他們不輸入任何內容,請使用CSS文件中指定的顏色。這可能嗎?動態JSP背景色
我在我的jsp中指定了CSS文件的位置,所以我知道我可以到達css背景顏色,但是如果用戶指定了一種顏色,我想'忽略'並使用他們選擇的顏色。
這可能嗎?
我有一個提交給JSP的html表單。該表單有一個用於指定背景色偏好的輸入。在JSP頁面上,我試圖使用用戶指定的背景顏色,或者如果他們不輸入任何內容,請使用CSS文件中指定的顏色。這可能嗎?動態JSP背景色
我在我的jsp中指定了CSS文件的位置,所以我知道我可以到達css背景顏色,但是如果用戶指定了一種顏色,我想'忽略'並使用他們選擇的顏色。
這可能嗎?
您可以通過<link href...>
加載默認css,然後在頁面上的<style>
塊中添加替代。由於style
塊上定義的樣式優先於其他樣式,因此它將成功覆蓋默認值。您可以看到更多關於如何CSS「級聯」W3C specs上的樣式。
嘗試像這樣在<head>
<link href="default.css" media="all" rel="stylesheet" />
<style>
/* Define custom CSS by the user here */
body{
background-color: <% ... %>;
}
</style>
我想有生產在JSP正確的輸出的方法很多,但使用JSTL Core IF Tag你可以做類似如下:
<style>
/* Define custom CSS by the user here */
body{
<core:if test="${param.backgroundColor!= null}">
background-color: <%=request.getParameter("backgroundColor")%>
</core:if>
}
</style>
這樣,如果用戶爲h1
元素選擇了自定義background-color
,它將覆蓋默認值。
好吧,所以在scriptlet標籤中,我會從請求中獲取參數(顏色),如果它爲null,我該怎麼辦? – user1154644
@ user1154644我用一種可以做到的方式更新了我的答案。 – aurbano
是否有理由將它包裹在h1塊中? – user1154644