在 html 中,图像由 <img> 标签 定义,<img> 是空 标签 ,意思是说,它只包含 属性 ,并且没有闭合 标签 。
html 图像 - 图像 标签 ( <img> ) 和源 属性 ( src )
在 HTML 中,图像由 <img> 标签 定义,请注意:从技术上讲,<img> 标签 并不会在网页中插入图像,而是从网页上 链接 图像。<img> 标签 创建的是被引用图像的占位空间。
<img> 是空 标签 ,意思是说,它只包含 属性 ,并且没有闭合 标签
要在 页面 上 显示 图像,需要使用源 属性 ( src )
src 指 "source",源 属性 的值是图像的 URL 地址
语法
<img?src="?*url*?"?alt="?*some_text*?">
URL 指存储图像的位置
浏览器将图像 显示 在文档中图像 标签 出现的地方
如果你将图像 标签 置于两个段落之间,那么浏览器会首先 显示 第 一个 段落,然后 显示 图片 ,最后 显示 第二段
属性 :
<img> 标签 有两个必需的 属性 :src 属性 (规定 显示 图像的URL)和alt 属性 (规定图像的替代文本)。
可选的 属性 :
height:定义图像的高度。
width:定义图像的宽度。
ismap:将图像定义为服务器端图像映射。
longdesc:指向包含长的图像描述文档的URL。
usemap:将图像定义为客户端的图像映射。
HTML 图像 - alt 属性
alt 属性 用来为图像定义一串预备的可替换的文本
替换文本 属性 的值是 用户 定义的
<img?src="boat.gif"?alt="Big?Boat">
在浏览器无法载入图像时,替换文本 属性 告诉读者她们失去的信息
此时,浏览器将 显示 这个替代性的文本而不是图像
为 页面 上的图像都 加上 替换文本 属性 是个好习惯,这样有助于更好的 显示 信息,并且对于那些使用纯文本浏览器的人来说是非常有用的
HTML 图像 - 设置图像的 高度与宽度
属性 height 与 width 属性 用于设置图像的 高度与宽度
属性 值 默 认单位为像素
<img?src="pulpit.jpg"?alt="Pulpit?rock"?width="304"?height="228">
指定图像的高度和宽度的 一个 很好的习惯
如果图像指定了高度宽度, 页面 加载时就会保留指定的尺寸
如果没有指定 图片 的大小,加载 页面 时有可能会破坏 HTML 页面 的整体布局
有用的 提示
假如某个 HTML 文件 包含十个图像,那么为了正确 显示 这个 页面 ,需要加载 11 个 文件
加载 图片 是需要时 间的 ,所以我们的建议是:慎用 图片
加载 页面 时,要注意插入 页面 图像的路径,如果不能正确设置图像的位置,浏览器无法加载 图片 ,图像 标签 就会 显示 一个 破碎的 图片
<li><img> 标签 之间有空隙?最终 解决 办法?
一、将 图片 转换为块级对象
即,设置img为“ dis play:block;”。在本例中 添加 一组css 代码 :“#sub img { dis play:block;}”。
二、设置 图片 的垂直对齐方式
即设置 图片 的vertical-align 属性 为“top,text-top,b ott om,text-b ott om”也可以 解决 。如本例中 增加 一组css 代码 :“#sub img {vertical-align:top;}”。
三、设置父对象的 文字 大小为0px
即,在#sub中 添加 一行:“font-size:0;”可以 解决 问题。但这也引发了新的问题,在父对象中的 文字 都无法 显示 。就算 文字 部分被子对象括起来,设置子对象 文字 大小依然可以 显示 ,但在CSS效验的时候会 提示 文字 过小的 错误 。
四、改变父对象的 属性
如果父对象的宽、高固定, 图片 大小随父对象而定,那么可以设置“overflow:hidden;”来 解决 。如本例中可以向#sub中 添加 以下 代码 :“width:88px;height:31px;overflow:hidden;”。
五、设置 图片 的浮动 属性
即在本例中 增加 一行CSS 代码 :“#sub img {float:left;}”。如果要实现图文混排,这种 方法 是很好的选择。
六、取消 图片 标签 和其父对象的最后 一个 结束 标签 之 间的 空格。
这个 方法 要强调下,在实际开发中该 方法 可能会出乱子,因为在写 代码 的时候为了让 代码 更体现语义和层次清晰,难免要通过IDE提供 代码 缩进 显示 ,这必然会让 标签 和其他 标签 换行 显示 ,比如说DW的“套用源格式”命令。
原因分析
图片 文字 等inline元素 默 认是和父级元素的baseline对齐的,而baseline又和父级底边有一定距离(这个距离和 font-size,font-family 相关,不一定是 5px),所以设置 vertical-align:top/b ott om/text-top/text-b ott om 都可以避免这种情况出现。而且不光li,其他的block元素中包含img也会有这个现象。
至于这里的HTML 属性 align=”center”(对于 图片 浏览器会处理成align=”middle”),就相当于vertical-align:middle; 所以道理也是一样的,只要vertical-align不取baseline,这个空隙就消失了。
相关信息
IE的 显示 有几种模式,在html文档的开始部分声明<!DOCTYPE ….> 如果声明为strict模式,ie以w3c的方式 显示 文档,而w3c的标准里面<img /> 默 认是 一个 inline的 标签 ,除非自己显式的声明为block。
那个空隙是ie针对盒模型 默 认的line-height和font-size。给img desplay:block;虽然能 解决 问题,但没从结构上来考虑.可谓治标不治本。?