图片显示不仅跟图片的路径有关,还跟图片控件有关。
服务器Web控件:
- <asp:Image ID="Image1" runat="server" ImageUrl="~/images/Image2.gif"/> // ~ 代表根目录
HTML控件:
- <img src="images/Image2.gif" />
- <img src="../ImForm/images/Image2.gif" /> // .. 代表上一层文件夹
Admin目录下有文件夹images1和页面Default1.aspx;
Manager目录下有文件夹页面Default2.aspx。
1、 在根目录的Default.aspx 中拖放2种图片控件,用来访问图片。
1)首先是来访问根目录的images图片文件夹中的图片。代码如下正常显示:
- <asp:Image ID="Image1" runat="server" ImageUrl="~/images/Image2.gif"/> // ~代表根目录
- <asp:Image ID="Image2" runat="server" ImageUrl="/ImForm/images/Image2.gif"/>//其实根目录就是 /ImForm 即 ~ == /ImForm 。
- <asp:Image ID="Image3" runat="server" ImageUrl="../ImForm/images/Image2.gif"/>// ..代表根目录(ImForm)上一层还有目录。
- <img src="images/Image2.gif" runat="server"/> //Default与images直接在同一根目录下
- <img src="/ImForm/images/Image2.gif" /> //加上根目录同样显示
- <img src="../ImForm/images/Image2.gif" />//同上
2)再来访问Admin文件夹下的images1中的图片。
- <asp:Image ID="Image4" runat="server" ImageUrl="~/Admin/images1/Image1.gif"/>
- <asp:Image ID="Image5" runat="server" ImageUrl="/ImForm/Admin/images1/Image2.gif"/>
- <asp:Image ID="Image6" runat="server" ImageUrl="../ImForm/Admin/images1/Image2.gif"/>
- <img src="Admin/images1/Image1.gif" runat="server"/> //逐级访问。
- <img src="/ImForm/Admin/images1/Image2.gif" />
- <img src="../ImForm/Admin/images1/Image2.gif" />
2、 在Admin目录下的Default1.aspx拖放2种图片控件。
1) 首先是来访问根目录的images图片文件夹中的图片。如下代码能正常显示:
- <asp:Image ID="Image1" runat="server" ImageUrl="~/images/Image2.gif"/>
- <asp:Image ID="Image2" runat="server" ImageUrl="/ImForm/images/Image2.gif"/>
- <img src="../images/Image2.gif" />
- <img src="/ImForm/images/Image2.gif" />
2) 再来访问Admin文件夹下的images1中的图片。
- <asp:Image ID="Image3" runat="server" ImageUrl="~/Admin/images1/Image1.gif"/>
- <asp:Image ID="Image4" runat="server" ImageUrl="/ImForm/Admin/images1/Image2.gif"/>
- <img src="images1/Image1.gif" /> //直接属同一个目录下
- <img src="/ImForm/Admin/images1/Image2.gif" />
- <asp:Image ID="Image1" runat="server" ImageUrl="~/Admin/images1/Image1.gif"/>
- <asp:Image ID="Image2" runat="server" ImageUrl="/ImForm/Admin/images1/Image2.gif"/>
- <img src="../Admin/images1/Image1.gif" /> //页面与图片文件夹不在同一目录下
- <img src="/ImForm/Admin/images1/Image2.gif" />
总结:1)对于服务器控件,这2种通用:
<asp:Image ID="Image1" runat="server" ImageUrl="~/Admin/images1/Image1.gif"/>
<asp:Image ID="Image2" runat="server" ImageUrl="/ImForm/Admin/images1/Image2.gif"/>
2)这种“ ../ImForm ”只有直接在根目录下的页面控件才能使用,而图片文件不管在哪。
3)对于html控件
a. 如果图片文件夹/图片 和页面控件 直接同属一个目录,直接访问路径就行。
b.如果图片文件夹和页面不在同一目录,又是平级目录 或 图片文件夹级目录大于页面级目录,就要使用“ .. ”来代表上一层目录。
3、 在Manager目录的Default2.aspx拖放2种控件,来访问Admin目录下的images1中的图片。
根目录ImForm 下有3个文件夹Admin、images、Manager 和一个页面Default.aspx。