热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

图解CSS3读书笔记——边框

CSS的边框属性:border-style、border-width、border-color写法:分开写:E{border-style:

CSS的边框

属性:border-styleborder-widthborder-color

写法:
分开写:E {border-style: solid;border-width: 1px;border-color: alicebule;}
合并写:E {border: 1px solid alicebule;}

注意:

  • border-style是必须属性,其他顺序可以打乱写

  • 如果设定 border:none,浏览器自动解析为border-style:none

  • 边框大小即border-width默认为medium

css3新增:
border-colorborder-imageborder-radius

CSS3:border-color

在css2中,我们可以运用border-color属性给元素的边框整体或者每一条边框上色,但是每条边框最多只能使用一种颜色。

而css3改进的border-color属性为我们提供了同一条边框设置多种颜色(比如说给边框添加一个渐变色,或者说一个彩色)的途径。不过到目前为止只有Firefox 3.0+的浏览支持这个属性。也是因为这一点,css3的border-color应用是相当的少。

上文提到过,css3border-color只有FF支持,故运用或测试时我们需要加上-moz-前缀。

用法:

.box{border:5px solid transparent;-moz-border-top-colors: ;-moz-border-right-colors: ;-moz-border-bottom-colors: ;-moz-border-left-colors: ;
}

我们这时给每一条边框都设置了5种颜色,且都占据着5px的宽度。这个时候每种颜色的border-width为1px。事实上,如果我们边框设置了x个像素的宽度,并且为每条边框设置了y种颜色,若x>y,则前y-1种颜色每种占据了1px,最后一种颜色占据x-y+1个像素。

实例:立体渐变效果

.box {width: 200px;height: 100px;border: 10px solid transparent;border-radius: 15px 0 15px 0;-moz-border-top-colors:#a0a #909 #808 #707 #606 #505 #404 #303;-moz-border-right-colors:#a0a #909 #808 #707 #606 #505 #404 #303;-moz-border-bottom-colors:#a0a #909 #808 #707 #606 #505 #404 #303;-moz-border-left-colors:#a0a #909 #808 #707 #606 #505 #404 #303;}

效果:

clipboard.png

CSS3:border-radius

border-radius相信很多前端ers都很熟悉了,就是元素圆角效果。这个属性兼容了ie9+以及其他主流现代浏览器。

基本写法:

  • 设置统一半径的圆角:border-radius:

  • 设置多个半径的圆角: border-radius:

  • 设置水平垂直半径不统一的圆角:border-radius: /

  • 分开设置:

    border-top-left-radius: /
    border-top-right-radius: /
    border-bottom-left-radius: /
    border-bottom-left-radius: /

    为兼容其他老版本的的浏览器,需要为其加上前缀,并且写法有点区别:

    FF:-moz-border-radius-topleft
    Chrome:-webkit-border-top-left-radius

    图解CSS3中提到webkit内核浏览器下图片没有圆角效果,经过测试(基于当前本人的chrome 44+的版本)webkit内核较新版本的浏览器已经修正了这个问题。如下图

Chrome下:
clipboard.png
FF下:
clipboard.png

border-radius还可以做出如圆、半圆、四分之一圆、椭圆的效果:

  • 圆:

    .box {

    height: 100px; width: 100px; border-radius:100px;/*或者50%*/ background: aliceblue; margin: 20px;

    }

  • 半圆:

    .box {

    height: 100px;width: 50px;border-radius: 50px 0 0 50px;/*分表表示左上角 右上角 右下角 左下角*/background: aliceblue;

    }

  • 四分之一圆:

    .box {

    height: 100px;width: 50px;border-radius: 50px 0 0 0;/*分表表示左上角 右上角 右下角 左下角*/background: aliceblue;

    }

  • 椭圆:

    .box {

    height: 100px;width: 50px;border-radius: 25px / 50px;/*分表表示水平半径 垂直半径。或者50% / 50%;*/background: aliceblue;

    }

CSS3:border-image

border-image属性用以给任何元素(除border-collapse属性为collapsetable元素)设置图片效果边框,可以用来制作圆角按钮效果,渐变tabs效果等。border-image允许你使用一张小图片,并且将它分割成九个小部分, 然通过延伸这个小部分使其构成一个更大的元素。

注意 ie并不支持border-image

写法:

border-image: url top right bottom left x-repeat y-repeat

  • url:采用的图片的路径

  • top,right,bottom,left:图片的切割方法,注意是不需要加单位的(加了会失效)。默认是px,但可以使用百分比

如图:
clipboard.png

图片切割方式:
这里通过两个实例来说明图片切割方式:

clipboard.png
通过切割左边的小图片,使其延展+拼接成右边的大图。
若是我们进行如下的分割:

clipboard.png

这样图片的切割长度分别为:0(上) 30(右) 0(下) 30(左)
现在的情况就等于用4、6两块小图进行拼接和延伸:

clipboard.png

很容易发现,只要我们在水平和垂直方向进行延展就会达成效果图的样子了。

如果图片切割成这样:

clipboard.png
就会发现实际效果中,会多出上下边框的宽度。其他没有变化。

图片铺排方式:

clipboard.png
左图水平和垂直方向都是stretch,右图水平是stretch,垂直是round

clipboard.png
图一水平和垂直均为round,图二水平和垂直均为stretch,图三均为repeat

参考文章:Click

CSS3:box-shadow

box-shadow用来定义元素的盒子阴影。
IE8及以前的浏览器不支持box-shadow

用法:

border-shadow: 阴影类型 水平位移 垂直位移 模糊半径 阴影扩展半径 颜色

  • 阴影类型默认为: 外阴影,可设定唯一值:inset

  • 水平位移:x-offset。可取正负值,正值阴影在元素右方。

  • 垂直位移:y-offset。可取正负值,正值阴影在元素下方。

  • 模糊半径:值只能为正,取值越大,阴影边缘越模糊。

  • 阴影扩展半径:可取正负值。若无模糊半径,设置了扩展半径和为元素设置边框的效果一致。

多层阴影:
box-shadow可以多层阴影同时使用,每层阴影之间使用“,”隔开。设置在最前的阴影将显示在最顶层,所以一定要注意阴影的大小取值。
若阴影的设置为:0 0 0 20px lime, 0 0 0 10px yellow, 0 0 0 8px green
则这时第一层阴影的扩展半径为20,显示在最顶层;第二层阴影显示在第一层阴影之下,此时因为第一层阴影的扩展半径>第二层阴影的扩展半径,所以第一层阴影会把第二层阴影覆盖掉。



推荐阅读
  • css元素可拖动,如何使用CSS禁止元素拖拽?
    一、用户行为三剑客以下3个CSS属性:user-select属性可以设置是否允许用户选择页面中的图文内容;user-modify属性可以设置是否允许输入 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • css,背景,位置,y,background, ... [详细]
  • (PC+WAP)织梦模板户外设备类网站
    模板介绍:织梦内核开发的模板,该模板属于户外设备、宣传栏类企业都可使用,这款模板使用范围极广,不仅仅局限于一类型的企业&#x ... [详细]
  • js html 图片 缓存问题,如何防止浏览器缓存CACHE?将CSS、JS、图片加上参数
    什么是浏览器缓存浏览器缓存功能是网页性能优化的项目之一使用浏览器缓存功能如果用户再次来到您的网站,缓存css、js、jpg、png图档等静态资源将能使网页打开速度加快 ... [详细]
  • 去网上在线生成一个favicon.ico图标,然后把下面的代码复制到页面的head ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 如何压缩网站页面以减少页面加载时间
    本文介绍了影响网站打开时间的两个因素,即网页加载速度和网站页面大小。重点讲解了如何通过压缩网站页面来减少页面加载时间。具体包括图片压缩、Javascript压缩、CSS压缩和HTML压缩等方法,并推荐了相应的压缩工具。此外,还提到了一款Google Chrome插件——网页加载速度分析工具Speed Tracer。 ... [详细]
  • CSS|网格-行-结束属性原文:https://www.gee ... [详细]
  • 文章目录简介HTTP请求过程HTTP状态码含义HTTP头部信息Cookie状态管理HTTP请求方式简介HTTP协议(超文本传输协议)是用于从WWW服务 ... [详细]
  • 最近在学Python,看了不少资料、视频,对爬虫比较感兴趣,爬过了网页文字、图片、视频。文字就不说了直接从网页上去根据标签分离出来就好了。图片和视频则需要在获取到相应的链接之后取做下载。以下是图片和视 ... [详细]
author-avatar
雯雯2046
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有