web应用程序中layout.html的图像

时间:2014-05-08 11:45:40

标签: html layout tapestry

我想在标题中设计包含图像的布局。我尝试将layout.tml与html组件“img”放在一个部门,但是atribute“src”取决于你所在的页面。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

使用CSS是一个很好的选择;另一种方法是让Tapestry为您生成正确的图像URL:

<img src="context:images/image.png" alt="Logo"/>

在这种情况下,img不是一个组件,而是一个动态元素; src属性绑定到context:images/image.png1,该属性解析为图像的正确Tapestry URL;事实上,URL将比您预期的更长,因为它将包含(在Tapestry 5.4中)基于内容的哈希码,处理将包括E-Tag支持和远期到期头。

答案 1 :(得分:0)

您可以将标题留空并使用内部css使标题的背景更改

例如,您创建标题栏

<div class="headerBG"></div>

然后在每个页面1中包括

<styles> 
.headerBG {
   background-image: page1Header.png;
}
</styles>
第2页

<styles> 
.headerBG {
   background-image: page2Header.png;
}
</styles>

等等


另一种方式是使用javascript

<script>
  currPage = location.pathname.substring(1);
  if (currPage == index.html) {
     document.getElementByID("imageid").src="image1.png";
  }
</script>