在html中如果图片的位置和html文件位置不同,怎么设置图片路径

html-css06

在html中如果图片的位置和html文件位置不同,怎么设置图片路径,第1张

比如:有一个“a”文件夹,里面有“test.html"和”test.jpg"两个文件,test.html中引用test.jpg的话,路径直接写“test.jpg"就行了。

一. 基本概念

超文本标记语言,标准通用标记语言下的一个应用。 “超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。 超文本标记语言的结构包括“头”部分(英语:Head)、和“主体”部分(英语:Body),其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。

二. 有关约定

(1) 文本标记语言源程序的文件扩展名默认使用htm或html。在使用文本编辑器时,注意修改扩展名。而常用的图像文件的扩展名为gif和jpg。

(2) HTML源程序为文本文件,其列宽可不受限制,即多个标记可写成一行,甚至整个文件可写成一行;若写成多行,浏览器一般忽略文件中的回车符(标记指定除外);对文件中的空格通常也不按源程序中的效果显示。完整的空格可使用特殊符号“&nbsp(注意此字母必须小写,方可空格)”表示非换行空格,如需换行可以输入<br/>;表示文件路径时使用符号“/”分隔,文件名及路径描述可用双引号也可不用引号括起。

(3) 标记符中的标记元素用尖括号括起来,如:"<"">",带斜杠的元素表示该标记说明结束;大多数标记符必须成对使用,以表示作用的起始和结束;标记元素忽略大小写,即与作用相同,但完整的空格可使用特殊符号“&nbsp(注意此字母必须小写,方可空格)”;许多标记元素具有属性说明,可用参数对元素作进一步的限定,多个参数或属性项说明次序不限,其间用空格分隔即可;一个标记元素的内容可以写成多行。

(4) 标记符号,包括尖括号、标记元素、属性项等必须使用半角的西文字符,而不能使用全角字符。

(5) HTML注释由惊叹号表示,注释内容由符结束。注释内容可插入文本中任何位置。任何标记若在其最前插入惊叹号,即被标识为注释,不予显示。

<%=request.getContextPath()%>

这个是绝对路径,要在JSP页面头加入:

<%

String

path

=

request.getContextPath()

String

basePath

=

request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"

%>

在同一目录下用相对路径。

cache的路径和容量在浏览器设置的,和html无关,html最多请求要不要缓存

cache-control:||no-cache||no-store||max-age

1.no-cache:

表面意为“数据内容不被缓存”,而实际数据是被缓存到本地的,只是每次请求时候直接绕过缓存这一环节直接向服务器请求最新资源,由于浏览器解释不一样,

例如ie中我们设置了no-cache之后,请求虽然不会直接使用缓存,但是还会用缓存数据与服务器数据进行一致性检测(也就是说还是有几率会用到缓存的),

firefox中则完全无视no-cache存在,详细解释见no-store

2.no-store:

指示缓存不存储此次请求的响应部分。与no-cache比较来说,一个是不用缓存,一个是不存储缓存按理来说这个设置更加粗暴直接禁用缓存,

但是具体实现起来 浏览器之间差异却特别大,一般不会直接用该字段进行设置,不过no-store是为了防止缓存被恶意修改存储路径导致信息被泄露而设置的,

毕竟有它的用处,在firefox中实现缓存是通过文件另存为将缓存副本保存到本地,直接利用no-cache对其是无效的,如果加上no-store设置的话 则可以起到与no-cache一样的效果

即:cache-control:no-cache,no-store可以确保在支持http1.1版本中各大浏览器回车后退刷新无缓存;

再加上Pragma: no-cache设置兼容版本1.0即可(不过为了防止一致性检测时候的万一我们还是最好加上一致性检测的内容,如下所示几种方式);

3.max-age:

例如Cache-control: max-age=3;表示此次请求成功后3秒之内发送同样请求不会去服务器重新请求,而是使用本地缓存;同样我们如果设置max-age=0表示立即抛弃缓存直接发送请求到服务器