css图文混排的关键核心是什么

html-css0170

css图文混排的关键核心是什么,第1张

css图文混排的关键核心的是文字与图片能否合适的去组合在一起。

图片与文字的排版比例要遵循黄金分割原理1:0.618黄金分割比是我们很早的时候就有学习到的,这也是目前在世界范围内都公认的最好构图比例,黄金分割率的页面比例可以给人带来视觉上的美感。这个是css图文混排的关键核心。

图文混排是版式设计中最常见的情况,图片与文字在传达版面信息上具有不同的特点,图片在视觉传达上可以辅助文字。

网页中有时也需要像word那样实现图文混排。那么如何通过CSS实现网页图文混排。

工具/原料

Dreamweaver CS5

方法/步骤

用下面这段话做测试:“百度经验是百度于2010年10月推出的一款生活知识系新产品。它主要解决用户"具体怎样做",重在解决实际问题。在架构上,整合了百度知道的问题和百度百科的格式标准。经验是一篇能指导人们达到某种目的的文章,通常包括概述、工具/原料、步骤/方法、注意事项、参考资料等几个部分,其中步骤/方法详细的描述了达到目的的操作过程,便于学习和模仿。经验一般含有丰富的图片(如果必要),和简明的文字,通常和现实生活联系紧密,能帮助人们解决实际问题。”如何实现图文混排。

网页在没有实现图文混排前的效果,先做CSS样式,看以下代码:

#title{

font-size:19px /* 字号大小 */

font-weight:bold /* 粗体 */

text-align:center /* 居中 */

}

#content{

font-size:16px /* 字号大小*/

}

这段样式就是对文字作一个简单的设置。

然后就是通过测试段落做测试:

<body>

<div id="title">百度经验</div>

<div id="content">

<img src="baidu.png" border="0">

百度经验是百度于2010年10月推出的一款生活知识系新产品。它主要解决用户"具体怎样做",重在解决实际问题。在架构上,整合了百度知道的问题和百度百科的格式标准。经验是一篇能指导人们达到某种目的的文章,通常包括概述、工具/原料、步骤/方法、注意事项、参考资料等几个部分,其中步骤/方法详细的描述了达到目的的操作过程,便于学习和模仿。经验一般含有丰富的图片(如果必要),和简明的文字,通常和现实生活联系紧密,能帮助人们解决实际问题。</div>

</body>

运行后如下所示

文字上方空出一大片,既占空间,也不美观,因此想像word那样实现图文混排,那就要对图片进行控制。

<style type="text/css">

</style>

中加入:

img{

float:left

}

即控制图片进行左浮动。

以下是可以实现图文混排的完整的代码:

<html>

<head>

<title>图文混排</title>

<style type="text/css">

#title{

font-size:19px /* 字号 */

font-weight:bold /* 粗体 */

text-align:center /* 居中 */

}

#content{

font-size:16px /* 字号 */

}

img{

float:left /* 图文混排 */

}

</style>

</head>

<body>

<div id="title">百度经验</div>

<div id="content">

<img src="baidu.png" border="0">

百度经验是百度于2010年10月推出的一款生活知识系新产品。它主要解决用户"具体怎样做",重在解决实际问题。在架构上,整合了百度知道的问题和百度百科的格式标准。经验是一篇能指导人们达到某种目的的文章,通常包括概述、工具/原料、步骤/方法、注意事项、参考资料等几个部分,其中步骤/方法详细的描述了达到目的的操作过程,便于学习和模仿。经验一般含有丰富的图片(如果必要),和简明的文字,通常和现实生活联系紧密,能帮助人们解决实际问题。</div>

</body>

</html>

运用后效果显示:

这就出现一个问题,如果图片过小,或文字过长,就会出现文字把整个表格撑得很大,即占用了很多空间,显示效果也非常不美观。

网上也有许多解决办法,但要么复杂,要么不能解决跨浏览器问题,要么不能自适应图片大小变化。

在我的这个方法中,解决了: 不需要在代码中指定图片大小、跨浏览器、非常简单。最后的效果如下图所示,当文字过长时,它会自动换行以适应图片宽度:

方法如下:

1)图片及图片说明代码如下:

<table

class="mod_img"

width="10"

align="left"

border="0"

cellpadding="0"

cellspacing="0"><tbody><tr><td

align="center"><a

title="点击查看原图"

href="/upload/20090214135145954.png"

target="_blank"><img

src="http://files.jb51.net/upload/20090214135147104.png"

vspace="0"

border="0"

hspace="0"></a></td></tr><tr><td

align="center"><div

class="mod_img_desc">香港殖民地最后的一面旗帜,由英国蓝旗和代表香港的殖民地徽所组成,1959年-1997年</div></td></tr></tbody></table>2)"mod_img"

的定义如下,它指定了表格及图片边框的CSS样式:

.mod_img

{margin:6px

border:1px

solid

#AAAAAA

padding:

3px

}

.mod_img

img{margin:3px

border:1px

solid

#AAAAAA

padding:0px

}

3)"mod_img_desc"

的定义如下,它指定了说明文本的CSS样式:

.mod_img_desc

{font-size:12pxword-break:break-allwidth:100%

overflow:auto}

这里的关键是上边的

width="10"

这处,这是文本自适应图片宽度的关键,实际上10是个很小的值,一般图片都大于这个值,并且在表格中显示一个图片时,图片会按自己的实际大小把这个表格撑开,因此这个

width

并不会影响图片的显示,而在

3)处指定了文本的

width

为100%,就是说文字按照实际的宽度显示,而不管该宽度是多少,当文字超过宽度时,自动换行。

经过测试,该方法在

IE/Firefox/Safari/Opera等浏览器中均能完美正常工作!祝你愉快。