css 中border-image 九宫格怎么理解,,求形象解答,小白不懂

html-css017

css 中border-image 九宫格怎么理解,,求形象解答,小白不懂,第1张

把一张用来做边框的图片横砍两刀,竖砍两刀,就变成一个由九个小图片组成的九宫格,其中四个角的四张图片就是边框的四个角,四条边上的四张图片就用来做边框的四条边。最中间的那个图片是边框包围着的实际内容,不属于边框,所以这张图片是用不到的,因此这个九宫格实际被利用到的就是四周的八张图片。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title></title>

<meta name="keywords" content="">

<meta name="description" content="">

<style type="text/css">

* { padding:0margin:0}

dl { width:153pxborder-top:1px solid #dddborder-left:1px solid #ddd}

dl dd { list-style:nonewidth:50pxheight:50pxfloat:leftborder-right:1px solid #dddborder-bottom:1px solid #dddfloat:left}

</style>

<script type="text/javascript" src="js/jquery.min.js"></script>

</head>

<body>

<dl>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

<dd></dd>

</dl>

</body>

</html>

像这种大家都在争执的问题本不应该参加,但闲着也闲着

对于“名词解释”我相信楼上三位都说的很清楚了,说点别的,你所说的用一张图片的问题。

先老生常谈一下,遵循:修饰/装饰用的图片处理原则嘛,本身它们没有意义,只是为了美化页面,也就要最小化处理。而你直接用一张图片做背景只是为了凸显4个圆角,效果可能相同,但意义不大。

而且比较有趣的是,你说浏览器放大百分图片会伸缩这点我比较好奇。你用的是固定长宽吧?如果你改成百分比呢?

也就是容器宽度用百分比,你的背景图片是固定大小是不会随着改变而改变的,这时候就是九宫格应该范围。(能理解吧?呵呵)

拿例子来说吧:你现在看的这个网页,我们问答的这个小容器宽度是固定的px,所以无论你如何改变浏览器大小是没有影响的,只有当它的宽度为xxx%百分比值的时候才会随着大小而伸缩。这个能理解吧?

如果是单纯处理四个角的话,无论是固定宽度还是百分比宽度,4个角永远都在两端移动。再加上这样处理后,4个角的图片加在一起大小最低也就在几KB。

其实,实现圆角的技术现在应该比以前多吧。几年前我所知的有:JS实现;单纯用CSS代码堆;九宫格;那个时候我最喜欢的就是用国外一个BLOG上演示的方法,就是用1px大小的方块挡住直角,虽然看起来不是很圆滑,但是简洁的代码,趋向圆角的非直角,还是另人感到清爽。

别看迷糊了,理解就行,大家玩儿的开心哈