CSS关于图片缩放和截取问题

html-css022

CSS关于图片缩放和截取问题,第1张

JS代码(随便放哪里):

<script language="javascript">

<!--

var flag=false

function DrawImage(ImgD){

var image=new Image()

image.src=ImgD.src

if(image.width>0 &&image.height>0){

flag=true

if(image.width/image.height>= 180/110){

if(image.width>180){

ImgD.width=180

ImgD.height=(image.height*110)/image.width

}else{

ImgD.width=image.width

ImgD.height=image.height

}

/*ImgD.alt="bigpic" */

}

else{

if(image.height>110){

ImgD.height=110

ImgD.width=(image.width*110)/image.height

}else{

ImgD.width=image.width

ImgD.height=image.height

}

/*ImgD.alt="bigpic" */

}

}

}

//-->

</script>

图片使用的地方:

<img src="图片" border=0 width="180" height="110" onload="javascriptrawImage(this)">

width="180" height="110" 注意这里最好限定,如果不限定加载图时会成原大,然后再缩小,这个过程如果图大了很难看的.这里是宽度和高度,在前面的JS里改,这里也作相应的改.

图不会变形,只会按比列缩 alt 解决不了.

css截取多行文字可以使用容器的超出隐藏来实现,注意:多行无法截取后面不会出现省略号;

1、因为要对其设定宽高,所以设置容器为block或者inline-block;

2、设置overflow:hidden让超出内容的部分不显示;

3、为了避免长单词,长的数字不换行,还需要对该容器设置:word-break:break-allword-wrap:break-word

这样就可以实现了文字的截取效果;

具体代码如下:

<style>

.wordwrap{width:100pxheight:36pxline-height:18pxfont:400 12px/1.5 Simsunoverflow:hiddenword-break:break-allword-wrap:break-word}

</style>

<div class="wordwrap">

    <span>文字截取文字截取文字截取文字截取文字截取文字截取文字截取文字截取文字截取文字截取文字截取</span>

</div>

background-position属性分为x轴和y轴,也就是横坐标和纵坐标两个值:background-positionx和background-positiony。

对于一整张大图只需要截取其中一部分,你需要知道两点:

1.需要的那一部分图片的在整个大图中的位置 2.它的大小

然后就好办了,我举个小例子:

一张300px*300px的大图,我需要的部分大小是宽20px高50px,在整个图片的位置离上边是20px;左边是80px,然后可以写样式了:

div{

background-image:url(bjimg.jpg)/*背景图片的路径*/

background-position:-80px -20px/*背景图片的位置是距左80px;距上20像素*/

width:20px/*div的宽度*/

height:50px/*div的高度*/

}

希望对你有所帮助。