蛮常见到有人问说,要如何才能让背景图片不管卷轴拉到那边都不会变?这其实只要透过设定 background-attachment 就能达到该效果了。
Body其实并不用做任何设定,这边我为了让网页有卷轴,所以在pre包起一段话:
HTML
- <body>
- <pre>
- 欢
- 迎
- 来
- 到
- 脚
- 本
- 之
- 家
- ,
- 若
- 有
- 任
- 何
- 问
- 题
- 还
- 请
- 多
- 留
- 言
- 指
- 教
- 了
- </pre >
- </body>
接着来看CSS中的语法:
CSS
- body{
- /* 设定背景图片 */
- background-image:url("sakuya_and_remi.jpg");
- /* 让图片不重覆排列 */
- background-repeat:no-repeat;
- /* 固定背景图片位置 */
- background-attachment:fixed;
- }
只要把 background-attachment 设成 fixed 就能固定背景图片了。若是要取消固定的话,只要把 background-attachment 拿掉或是设成 none 就行了。而其中的 background-repeat 设成 no-repeat 是避免当背景图片太小张时,让它不要重覆的显示。
还有另一种常见的情况是,背景图片本身就只是小小张的,但想让它固定在网页的某一位置的话,我们除了用 background-attachment 之外,还要搭配 background-position 来一起使用。
Body一样不变,直接看CSS的部份:
CSS
- body{
- /* 设定背景图片 */
- background-image:url("logo.gif");
- /* 让图片不重覆排列 */
- background-repeat:no-repeat;
- /* 固定背景图片位置 */
- background-attachment:fixed;
- /* 设定背景图片在右下角 */
- background-position:rightright bottombottom;
- }
background-position 值的设定可用数字加单位、数字加百分比或是使用关键字。background-position 基本上需要两各值,第一个是距离左边界的值,另一个则是距离上边界的值。但是若是要在中间的话,可以设一个 center 就可以了,另一个若没有的话,会自动认为也是 center。
background-position 位置的相对关系可以参考下面的图解。
怎样~是不是很简单呢!