# HTML <img> 标签
## 实例
在下面的例子中,我们在页面中插入一幅 W3School 的工程师在上海鲜花港拍摄的郁金香照片:
```
<img src="/i/eg_tulip.jpg" alt="上海鲜花港 - 郁金香" />
```
以上代码的效果:
![上海鲜花港 - 郁金香](https://box.kancloud.cn/2015-12-18_56736d6802aa4.jpg)
(您可以在页面底部找到更多实例)
## 浏览器支持
| IE | Firefox | Chrome | Safari | Opera |
| --- | --- | --- | --- | --- |
所有浏览器都支持 <img> 标签。
## 定义和用法
img 元素向网页中嵌入一幅图像。
请注意,从技术上讲,<img> 标签并不会在网页中插入图像,而是从网页上链接图像。<img> 标签创建的是被引用图像的占位空间。
<img> 标签有两个必需的属性:[src 属性](/tags/att_img_src.asp) 和 [alt 属性](/tags/att_img_alt.asp)。
延伸阅读:[如何正确地使用图像](#how-to-use-image)
## HTML 与 XHTML 之间的差异
在 HTML 中,<img> 标签没有结束标签。
在 XHTML 中,<img> 标签必须被正确地关闭。
在 HTML 4.01 中,不推荐使用 image 元素的 "align"、"border"、"hspace" 以及 "vspace" 属性。
在 XHTML 1.0 Strict DTD 中,不支持 image 元素的 "align"、"border"、"hspace" 以及 "vspace" 属性。
## 必需的属性
| 属性 | 值 | 描述 |
| --- | --- | --- |
| [alt](/tags/att_img_alt.asp "HTML <img> 标签的 alt 属性") | _text_ | 规定图像的替代文本。 |
| [src](/tags/att_img_src.asp "HTML <img> 标签的 src 属性") | _URL_ | 规定显示图像的 URL。 |
## 可选的属性
| 属性 | 值 | 描述 |
| --- | --- | --- |
| [align](/tags/att_img_align.asp "HTML <img> 标签的 align 属性") | `top` `bottom` `middle` `left` `right` | 不推荐使用。规定如何根据周围的文本来排列图像。 |
| [border](/tags/att_img_border.asp "HTML <img> 标签的 border 属性") | _pixels_ | 不推荐使用。定义图像周围的边框。 |
| [height](/tags/att_img_height-width.asp "HTML <img> 标签的 height 和 width 属性") | _pixels_ _%_ | 定义图像的高度。 |
| [hspace](/tags/att_img_hspace_vspace.asp "HTML <img> 标签的 hspace 和 vspace 属性") | _pixels_ | 不推荐使用。定义图像左侧和右侧的空白。 |
| [ismap](/tags/att_img_ismap.asp "HTML <img> 标签的 ismap 属性") | _URL_ | 将图像定义为服务器端图像映射。 |
| [longdesc](/tags/att_img_longdesc.asp "HTML <img> 标签的 longdesc 属性") | _URL_ | 指向包含长的图像描述文档的 URL。 |
| [usemap](/tags/att_img_usemap.asp "HTML <img> 标签的 usemap 属性") | _URL_ | 将图像定义为客户器端图像映射。 |
| [vspace](/tags/att_img_hspace_vspace.asp "HTML <img> 标签的 hspace 和 vspace 属性") | _pixels_ | 不推荐使用。定义图像顶部和底部的空白。 |
| [width](/tags/att_img_height-width.asp "HTML <img> 标签的 height 和 width 属性") | _pixels_ _%_ | 设置图像的宽度。 |
## 全局属性
<img> 标签支持 [HTML 中的全局属性](/tags/html_ref_standardattributes.asp)。
## 事件属性
<img> 标签支持 [HTML 中的事件属性](/tags/html_ref_eventattributes.asp)。
## TIY 实例
[插入图像](/tiy/t.asp?f=html_image)
本例演示如何在网页中显示图像。
```
<!DOCTYPE HTML>
<html>
<body>
<p>
一幅图像:
<img src="/i/eg_mouse.jpg" width="128" height="128" />
</p>
<p>
一幅动画图像:
<img src="/i/eg_cute.gif" width="50" height="50" />
</p>
<p>请注意,插入动画图像的语法与插入普通图像的语法没有区别。</p>
</body>
</html>
```
[从不同的位置插入图片](/tiy/t.asp?f=html_image2)
本例演示如何将其他文件夹或服务器的图片显示到网页中。
```
<html>
<body>
<p>
来自另一个文件夹的图像:
<img src="/i/ct_netscape.jpg" />
</p>
<p>
来自 W3School.com.cn 的图像:
<img src="http://www.w3school.com.cn/i/w3school_logo_white.gif" />
</p>
</body>
</html>
```
[背景图片](/tiy/t.asp?f=html_backgroundimage)
本例演示如何添加背景图片到HTML页面。
```
<html>
<body background="/i/eg_background.jpg">
<h3>图像背景</h3>
<p>gif 和 jpg 文件均可用作 HTML 背景。</p>
<p>如果图像小于页面,图像会进行重复。</p>
</body>
</html>
```
[排列图片](/tiy/t.asp?f=html_image_align)
本例演示如何在文字中排列图像。
```
<html>
<body>
<h2>未设置对齐方式的图像:</h2>
<p>图像 <img src ="/i/eg_cute.gif"> 在文本中</p>
<h2>已设置对齐方式的图像:</h2>
<p>图像 <img src="/i/eg_cute.gif" align="bottom"> 在文本中</p>
<p>图像 <img src ="/i/eg_cute.gif" align="middle"> 在文本中</p>
<p>图像 <img src ="/i/eg_cute.gif" align="top"> 在文本中</p>
<p>请注意,bottom 对齐方式是默认的对齐方式。</p>
</body>
</html>
```
[浮动图像](/tiy/t.asp?f=html_image_float)
本例演示如何使图片浮动至段落的左边或右边。
```
<html>
<body>
<p>
<img src ="/i/eg_cute.gif" align ="left">
带有图像的一个段落。图像的 align 属性设置为 "left"。图像将浮动到文本的左侧。
</p>
<p>
<img src ="/i/eg_cute.gif" align ="right">
带有图像的一个段落。图像的 align 属性设置为 "right"。图像将浮动到文本的右侧。
</p>
</body>
</html>
```
[调整图像尺寸](/tiy/t.asp?f=html_image_size)
本例演示如何将图片调整到不同的尺寸。
```
<html>
<body>
<img src="/i/eg_mouse.jpg" width="50" height="50">
<br />
<img src="/i/eg_mouse.jpg" width="100" height="100">
<br />
<img src="/i/eg_mouse.jpg" width="200" height="200">
<p>通过改变 img 标签的 "height" 和 "width" 属性的值,您可以放大或缩小图像。</p>
</body>
</html>
```
[为图片显示替换文本](/tiy/t.asp?f=html_image_alt)
本例演示如何为图片显示替换文本。在浏览器无法载入图像时,替换文本属性告诉读者她们失去的信息。为页面上的图像都加上替换文本属性是个好习惯。
```
<html>
<body>
<p>仅支持文本的浏览器无法显示图像,仅仅能够显示在图像的 "alt" 属性中指定的文本。在这里,"alt" 的文本是“向左转”。</p>
<p>请注意,如果您把鼠标指针移动到图像上,大多数浏览器会显示 "alt" 文本。</p>
<img src="/i/eg_goleft.gif" alt="向左转" />
<p>如果无法显示图像,将显示 "alt" 属性中的文本:</p>
<img src="/i/eg_goleft123.gif" alt="向左转" />
</body>
</html>
```
[制作图像链接](/tiy/t.asp?f=html_image_link)
本例演示如何将图像作为一个链接使用。
```
<html>
<body>
<p>
您也可以把图像作为链接来使用:
<a href="/example/html/lastpage.html">
<img border="0" src="/i/eg_buttonnext.gif" />
</a>
</p>
</body>
</html>
```
[创建图像地图](/tiy/t.asp?f=html_areamap)
本例显示如何创建带有可供点击区域的图像地图。其中的每个区域都是一个超级链接。
```
<html>
<body>
<p>请点击图像上的星球,把它们放大。</p>
<img
src="/i/eg_planets.jpg"
border="0" usemap="#planetmap"
alt="Planets" />
<map name="planetmap" id="planetmap">
<area
shape="circle"
coords="180,139,14"
href ="/example/html/venus.html"
target ="_blank"
alt="Venus" />
<area
shape="circle"
coords="129,161,10"
href ="/example/html/mercur.html"
target ="_blank"
alt="Mercury" />
<area
shape="rect"
coords="0,0,110,260"
href ="/example/html/sun.html"
target ="_blank"
alt="Sun" />
</map>
<p><b>注释:</b>img 元素中的 "usemap" 属性引用 map 元素中的 "id" 或 "name" 属性(根据浏览器),所以我们同时向 map 元素添加了 "id" 和 "name" 属性。</p>
</body>
</html>
```
## 延伸阅读 - 如何正确地使用图像
HTML 和 XHTML 最引人注目的特征之一,就是能够在文档的文本中包括图像,既可以把图像作为文档的内在对象(内联图像),也可以将其作为一个可通过超链接下载的单独文档,或者作为文档的背景。
合理地在文档内容中加入图像(静态的或者具有动画效果的图标、照片、说明、绘画,等等)时,会使文档变得更加生动活泼,更加引人入胜,而且看上去更加专业,更具信息性并易于浏览。还可以专门使一个图像成为超链接的可视引导图。
然而,如果过度使用图像,文档就会变得支离破碎,混乱不堪,而且无法阅读,用户在下载和查看该页面时,更会增加很多不必要的等待时间。
请阅读下面的文章,学习 Web 上的两种主要图像格式:GIF 和 JPEG,以及如何正确地使用图像:
* [GIF 图像](/media/media_gif.asp "多媒体教程 - GIF 图像")
* [JPEG 图像](/media/media_jpeg.asp "多媒体教程 - JPEG 图像")
* [在 Web 上使用图像](/media/media_browserimages.asp "多媒体教程 - 在 Web 上使用图像")
## 参阅
* [教程:HTML 图像](/html/html_images.asp "HTML 图像")
* [参考手册:HTML 5 <img> 标签](/tags/tag_img.asp "HTML 5 <img> 标签")
## 相关页面
HTML DOM 参考手册:[Image 对象](/jsref/dom_obj_image.asp "HTML DOM Image 对象")
- HTML 标签列表
- HTML <!--...--> 标签
- HTML <!DOCTYPE> 标签
- HTML <a> 标签
- HTML <abbr> 标签
- HTML <acronym> 标签
- HTML <address> 标签
- HTML <applet> 标签
- HTML <area> 标签
- HTML <article> 标签
- HTML <aside> 标签
- HTML <audio> 标签
- HTML <b> 标签
- HTML <base> 标签
- HTML <basefont> 标签
- HTML <bdi> 标签
- HTML <bdo> 标签
- HTML <big> 标签
- HTML <blockquote> 标签
- HTML <body> 标签
- HTML <br> 标签
- HTML <button> 标签
- HTML <canvas> 标签
- HTML <caption> 标签
- HTML <center> 标签
- HTML <cite> 标签
- HTML <em> <strong> <dfn> <code> <samp> <kbd><var> <cite> 标签
- HTML <col> 标签
- HTML <colgroup> 标签
- HTML <command> 标签
- HTML <datalist> 标签
- HTML <dd> 标签
- HTML <del> 标签
- HTML <details> 标签
- HTML <dialog> 标签
- HTML <dir> 标签
- HTML <div> 标签
- HTML <dl> 标签
- HTML <dt> 标签
- HTML <embed> 标签
- HTML <fieldset> 标签
- HTML <figcaption> 标签
- HTML <figure> 标签
- HTML <font> 标签
- HTML <footer> 标签
- HTML <form> 标签
- HTML <frame> 标签
- HTML <frameset> 标签
- HTML <h1> 到 <h6> 标签
- HTML <head> 标签
- HTML <header> 标签
- HTML <hr> 标签
- HTML <html> 标签
- HTML <i> 标签
- HTML <iframe> 标签
- HTML <img> 标签
- HTML <input> 标签
- HTML DOM Button 对象
- HTML DOM Checkbox 对象
- HTML DOM Color 对象
- HTML DOM Input Date 对象
- HTML DOM Datetime 对象
- HTML DOM Datetime Local 对象
- HTML DOM Email 对象
- HTML DOM FileUpload 对象
- HTML DOM Hidden 对象
- HTML DOM Input Image 对象
- HTML DOM Month 对象
- HTML DOM Number 对象
- HTML DOM Password 对象
- HTML DOM Input Range 对象
- HTML DOM Radio 对象
- HTML DOM Reset 对象
- HTML DOM Input Search 对象
- HTML DOM Submit 对象
- HTML DOM Text 对象
- HTML DOM Input Time 对象
- HTML DOM Input URL 对象
- HTML DOM Input Week 对象
- HTML <ins> 标签
- HTML <keygen> 标签
- HTML <label> 标签
- HTML <legend> 标签
- HTML <li> 标签
- HTML <link> 标签
- HTML <main> 标签
- HTML <map> 标签
- HTML <mark> 标签
- HTML <menu> 标签
- HTML <menuitem> 标签
- HTML <meta> 标签
- HTML <meter> 标签
- HTML <nav> 标签
- HTML <noframes> 标签
- HTML <noscript> 标签
- HTML <object> 标签
- HTML <ol> 标签
- HTML <optgroup> 标签
- HTML <option> 标签
- HTML <output> 标签
- HTML <p> 标签
- HTML <param> 标签
- HTML <pre> 标签
- HTML <progress> 标签
- HTML <q> 标签
- HTML <rp> 标签
- HTML <rt> 标签
- HTML <ruby> 标签
- HTML <s> 标签
- HTML <script> 标签
- HTML <section> 标签
- HTML <select> 标签
- HTML <small> 标签
- HTML <source> 标签
- HTML <span> 标签
- HTML <strike> 标签
- HTML <style> 标签
- HTML <sub> 标签
- HTML <summary> 标签
- HTML <sup> 标签
- HTML <table> 标签
- HTML <tbody> 标签
- HTML <td> 标签
- HTML <textarea> 标签
- HTML <tfoot> 标签
- HTML <th> 标签
- HTML <thead> 标签
- HTML <time> 标签
- HTML <title> 标签
- HTML <tr> 标签
- HTML <track> 标签
- HTML <tt> 标签
- HTML <u> 标签
- HTML <ul> 标签
- HTML <video> 标签
- HTML <wbr> 标签
- HTML 全局属性
- HTML accesskey 属性
- HTML class 属性
- HTML contenteditable 属性
- HTML contextmenu 属性
- HTML data-* 属性
- HTML dir 属性
- HTML draggable 属性
- HTML dropzone 属性
- HTML hidden 属性
- HTML id 属性
- HTML lang 属性
- HTML spellcheck 属性
- HTML style 属性
- HTML tabindex 属性
- HTML title 属性
- HTML translate 属性
- HTML 事件属性
- HTML 5 视频/音频参考手册
- HTML 5 Canvas 参考手册
- HTML 元素和有效的 DTD
- HTML 颜色名
- HTML 字符集
- HTML ASCII 参考手册
- HTML ISO-8859-1 参考手册
- HTML 4.01 符号实体
- HTML URL 编码
- HTML 语言代码参考手册
- HTTP 状态消息
- HTTP 方法:GET 对比 POST
- 免责声明