[HTML/HTML5]6 使用图像

6.1  将图像作为Web页面的前景元素

  使用img元素,就可以在Web页面中添加图像。img是image的缩写。只需在img元素中添加src(source的缩写)属性,并为该属性设置相应的值,就可以将图像显示在Web页面上。

1 <img src="photo.jpg">  <!-- img是空元素,因此无对应的结束标记 -->

  src属性的值应该包含文件的正确路径名和位置。

  如果想使用的图像与当前HTML页面不在同一个文件夹中,那么需要告诉浏览器图像位于哪一个文件夹中。例如,如果图像位于比当前HTML页面所在目录高一级的文件夹中,则应该使用src=“../photo.jpg”,其中../告诉浏览器在查找图像文件之前,先上移一层目录。

  如果想引用另一个Web站点中的图片,首先必须获得该图像所有者的许可,然后可以使用src=“www.websitename.com/images/photo.jpg”这样的方式来引用该图片,器中URL就是其它网站上图像的完整名称。

6.1.1  指定图像的高度和宽度

  在Web页面中添加几张图片后,你可能会注意到在浏览器显示页面之前,页面中的图像有时会导致浏览器等待数秒的时间。这是因为浏览器不知道图像的尺寸,实际上某些浏览器在显示Web页面之前将一直等待,直到所有图像都下载完毕。

  因此,通过img标记中的height和width属性,告诉浏览器图片的尺寸,就可以帮助浏览器加快显示Web页面的速度。

1 <img src="photo.jpg" width="391px" height="274px">

  还可以使用height和width属性改变图像在页面上显示的尺寸。浏览器将根据新指定的尺寸来重新绘制该图像。W3C并不建议这样做——因为这可能会拖慢Web页面的显示速度,还可能导致图像丧失正确的长宽比。按照在Web页面中需要的尺寸来创建图像,这样做才是最好的。

6.1.2  为图像提供替换文本和标题

  使用<img>标记中的alt属性,可以为图像设置一个替换文本。

  alt属性的值是一段文本,它将显示在一个代替图片位置的方框之中,当浏览器无法找到该图像,或者将浏览器设置为不显示图像时,将显示该方框以代替图像。

1 <img src="art-turtle" height="600" width="412" alt="drawing of a turtle">

  除了alt属性之外,在<img>标记中添加title属性也是一个好主意。在浏览器无法加载图像的情形时,在靠近鼠标指针的提示方框中要显示重要的信息。此外,title属性不仅可以添加到<img>标记之中,还可以添加到链接和其它页面元素之中。title属性的作为是为用户提供一个快速提示,简单地解释页面元素的内容。

6.1.3  将图像链接到Web站点上的其它内容
  可以使用文本短语作为链接的标签,以便让用户单击链接。还可以使用图像作为链接的标签,它既可以带一个文本标签,也可以不带任何文本标签。

  要将整幅图片作为链接,只需在<img>左右添加<a>和</a>即可。

1 <a href="www.baidu.com"><img src="art-turtle" height="600" width="412" alt="drawing of a turtle" title="Drawing of a turtle"></a>

6.1.4  添加图片标题
  在HTML5之前,并没有一个简单的办法可以通过语义方式为实际的图像定义一个图片标题。幸运的是,在HTML5中可以使用figure元素和figcaption元素来实现。

1 <figure>
2 <img src="fabric-banner.jpg" alt="Fabric banner">
3 <figcaption>
4 Fabric banner handmade by the women of Nueva Imagen
5 </figcaption>
6 </figure>

  除了图像之外,还可以使用figure和figcaption元素为其它元素定义关联的标题。假如创建了一个提供参考信息表,并想将其放在一个较大的文本块中。可以将该表或其它图表放在一个figure元素中,然后该figure元素添加一个figcaption元素以定义一个解释该图表的标题。

6.2  为前景图片定义样式

6.2.1  图像边框

  在新的HTML规范中,W3C取消了img中的border属性,建议使用样式表来调整边框的显示,样式表对边框提供了更多的控制能力。

  与边框有关的样式表属性:

  • border-style:用于设置边框的线条风格,默认值为none(无边框),所以没有指定border-style值时,边框不显示。
  • border-width:控制边框的宽度,既可以单独设置边框的每一条边的宽度(border-left-width、border-right-width等),也可以一次设置四条边的宽度(border-width)。
  • border-color:可以指定1~4个值,用于控制边框的颜色。当指定两个值时,第一个值上下,第二值左右;当指定三个值时,第一个值上,第二个值左右,第三个值下;当指定四个值时,上下左右。
  • border-radius:可以指定1~4个值,用于控制边框4个角的圆角效果。要为图像的边框创建圆角效果,只需将border-radius属性设置为一个大于0的值即可。

  样式表为设置边框的各个属性提供了强大的功能,既可以将边框的4条边作为一个整体进行设置,也可以分别对每一条边进行设置。要单独设置某一条边,只需简单地在边框属性中添加该边的名称即可(top、right、bottom或者left)。

1 .headsot{
2 border-style:double;
3 border-left-style:none;
4 border-right-style:none;
5 border-width:10px;
6 border-left-width:0px;
7 border-right-width:0px;
8 border-color:#c00;
9 }

6.2.2  浮动
  当在一个文本块中添加图像时,有时希望改变图像的对齐方式,使图像不再简单地显示在文本的上面或下面,而是浮动在文本流之中。即采用CSS的float属性,并将其值设置为left或right即可。

  (1)浮动文本中的图片

  float属性的作用是告诉浏览器,将被浮动元素放在最靠近的指定浏览器边缘的位置,然后浮动其余的页面内容。换句话说,内容将自动地沿着设置了左浮动(left-floated)图片的右侧进行流动,或者沿着设置了右浮动(right-floated)图片的左侧进行流动。float属性可能的取值包括:left、right和none。

1 <img src="photo.jpg" style="float:left;">

  (2)清除浮动

  有时会遇到这种情况,即实际上需要停止或清除浮动。假如想将较长的文本拆分为两个段落,然后只让第一个段落包围着图像。第二个段落仍然占据整个页面的宽度。要实现这种布局,必须在第二个段落中使用clear属性来“清除浮动”。clear属性可能的取值为:left、right、both和none。

1 <p style="clear:left;">Remaining paragraph of text.</p>

  (3)浮动图片组

  假如页面中包含很多图像,如果所有图像都具有相同尺寸,那么使用float属性可以很容易地让浏览器自动将这些图像显示在页面同一行上(in line)。

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <title>test</title>
 5     <meta charset="utf-8">
 6     <style type="text/css">
 7         figure{
 8             float: left;
 9         }
10         figure figcaption{
11             text-align: center;
12             font-family: ‘微软雅黑‘;
13         }
14     </style>
15 </head>
16 <body>
17     <figure>
18         <img src="f://img/test.png" title="Q版金木研" width="300px" height="300px">
19         <figcaption>金木</figcaption>
20     </figure>
21     <figure>
22         <img src="f://img/test.png" title="Q版金木研" width="300px" height="300px">
23         <figcaption>金木</figcaption>
24     </figure>
25     <figure>
26         <img src="f://img/test.png" title="Q版金木研" width="300px" height="300px">
27         <figcaption>金木</figcaption>
28     </figure>
29 </body>
30 </html>

6.2.3  内边距和外边距

  还可以将padding属性和margin属性应用于图像,以定义围绕着图像内边距和外边距,可以声明一条边、两条边和三条边或四条边的边距。

1 <img src="f://img/test.png" title="Q版金木研" width="300px" height="300px" style="margin: 100px;">
1 <img src="f://img/test.png" title="Q版金木研" width="300px" height="300px" style="padding:  100px;">

6.2.4  居中

  使元素左外边距和右外边距完全相等就可以实现居中的效果,前提必须是告诉浏览器将图像作为一个块级元素处理。在CSS中,块级元素将自动填充整个可用空间。因此,如果将图像设置为一个块级元素,则它的外边距将自动扩展,直到遇到浏览器窗口的边缘。

1 img.centered{display:block; margin-left:auto; margin-right:auto;}

6.3  将图像作为Web页面的背景元素
  在Web页面中图像还有另一个角色,即作为Web页面的背景图片。即在body元素的样式声明中,添加background-image属性:

1 body{background-image:url("piture.jpg");}

  在样式表中背景属性有一个巨大的好处,即可以将背景图像应用于所有的页面元素,从段落、列表到表格中的单元格,都可以采用与定义body元素背景相同的办法进行定义。

1 p{background-image:url("piture.jpg");}

  通过在页面样式表中添加background-attachment属性,可以强制背景图像保持静止。

  当把background-attachment属性的值设置为fixed时,背景图像将保持固定状态。

  当把background-attachment属性的值设置为scroll时,背景图像将随着页面的滚动而滚动。    

  与之类似,还可以使用background-repeat属性,告诉浏览器是否重复显示背景图像。background-repeat属性可能的取值为:

  • repeat:背景图像在水平和垂直两个方向上都重复显示;
  • repeat-x:背景图像仅在水平方向上重复显示;
  • repeat-y:背景图像仅在垂直方向上重复显示;
  • no-repeat:背景图像不重复显示。
1 body{
2     background-image: url("f://img/test2.jpg");
3     background-repeat: no-repeat;
4     background-attachment: fixed;
5 }
时间: 2024-09-30 06:33:36

[HTML/HTML5]6 使用图像的相关文章

极客学院Web前端开发技术实战视频教程 初级入门+高级实战++专家课程+面试指导

===============课程目录=============== ├<初级中级>│  ├<1. HTML5开发前准备>│  │  ├1.HTML5开发前准备.mp4│  │  └2.开发前的准备-快捷键.mp4│  ├<10. React.js>│  │  ├React.js简介.txt│  │  ├<1.React 概述>│  │  │  ├React 开发环境搭建.mp4│  │  │  ├编写第一个 React 程序.mp4│  │  │  └什么

HTML5和CSS3基础教程(第8版)-读书笔记(2)

第7章 CSS构造模块 7.1 构造样式规则 样式表中包含了定义网页外观的规则.样式表中的每条规则都有两个主要部分:选 择 器(selector) 和 声 明 块(declaration block). 选择器决定哪些元素受到影响:声明块由一个或多个属性 - 值对(每个属性 -值对构成一条声明,declaration)组成,它们指定应该做什么. 声明块内的每条声明都是一个由冒号隔开.以分号结尾的属性- 值对. 声明的顺序并不重要,除非对相同的属性定义了两次. 在样式规则中可以添加额外的空格.制表

HTML5使用Canvas来绘制图形

一.Canvas标签: 1.HTML5<canvas>元素用于图形的绘制,通过脚本(通常是javascript)来完成. 2.<canvas>标签只是图形容器,必须使用脚本来绘制图形. 3.可以通过多种方法通过Canvas绘制路径.盒.圆.字符以及添加图像. 二.Canvas绘制图形 1.绘制矩形 2.绘制圆形 3.moveTo和lineTo 4.使用bezierCurveTo绘制贝塞尔曲线 5.绘制线性渐变 6.绘制径向渐变 7.绘制变形图形 8.绘制图形合成gloablComp

HTML5与CSS3基础(三)

11 用CSS进行布局 11.1 开始布局的注意事项 1 还是要强调的是内容与显示分离 2布局方法: 固定布局:整个页面和每一栏的内容都有基于像素的宽度. 就是说宽度都是固定好了的,不会因为你改变设备就随着你的设备的宽去进行改变. 响应式布局(流式页面):它使用的是百分数定义宽度,允许页面随着环境的改变来发生相应的改变. 就是现在最流行的响应式布局:bootstrap框架 3浏览器的注意事项: 浏览器之间存在在一些差异性,所以在网站建立好之后需要在不同的网站上进行测试 11.2构建页面 构造页面

三天学会HTML5——SVG和Canvas的使用

在第一天学习了HTML5的一些非常重要的基本知识,今天将进行更深层学习 首先来回顾第一天学习的内容,第一天学习了新标签,新控件,验证功能,应用缓存等内容. 第2天将学习如何使用Canvas 和使用SVG 实现功能 Lab1—— 使用Canvas Canvas 是指定了长度和宽度的矩形画布,我们将使用新的HTML5 JavaScript,可使用HTML5 JS API 来画出各种图形. 初始化 1. 创建HTML页面 <html> <head></head> <bo

HTML5 中的可缩放矢量图形(SVG)

简介 可缩放矢量图形 (SVG) 是基于矢量的图形家族的一部分.它们与基于光栅的图形不同,后者在一个数据数组中存储每个像素的颜色定义.如今,网络上使用的最常见的光栅图形格式包括 JPEG.GIF 和 PNG,每种格式都具有优缺点. 相比任何基于光栅的格式,SVG 具有多项优势: SVG 图形是使用数学公式创建的,需要在源文件中存储的数据要少得多,因为您无需存储每个独立像素的数据. 矢量图形可更好地缩放.对于网络上的图像,尝试从原始大小放大图像可能产生失真(或像素化的)图像. 原始像素数据是针对特

HTML5与CSS3权威指南.pdf8

第17章 与背景和边框相关的样式 与背景相关的新增属性 background-clip指定背景的显示范围 background-origin指定绘制背景图像时的起点 background-size指定背景中图像的尺寸 background-break指定内联元素的背景图像进行平铺时的循环方式 在Firefox浏览器需要加“-moz-” Safari浏览器需要加“-webkit-” background-clip的值有border(背景范围包括边框区域)和padding(背景范围包括padding

HTML5+CSS3 animation/keyframe/transform/transition/2D translate/3D translate 学习总结

<h1>HTML5+CSS3 animation/keyframe/transform/transition/2D translate/3D translate 学习总结</h1> <h1>HTML5,animation,keyframe,transform,transition,2D translate,3D translate,CSS3</h1> CSS3 教程 CSS 用于控制网页的样式和布局. CSS3 是最新的 CSS 标准. 本教程向您讲解 CS

HTML5 &lt;canvas&gt; 元素用于图形的绘制,通过脚本(通常是javascript)完成

<canvas> 标签只是图形容器,您必须使用脚本来绘制图形 可以通过多种方法使用canvas绘制路径\盒\圆以及添加图像 创建一个画布(Canvas) 一个画布在网页中是一个矩形框,通过 <canvas> 元素来绘制. 注意: 默认情况下 <canvas> 元素没有边框和内容. <canvas>简单实例如下: <canvas id="myCanvas" width="200" height="100&