认识border

border就是边框。边框有三个要素:粗细、线型、颜色。

颜色如果不写,默认是黑色。另外两个属性不写,要命了,显示不出来边框。

<style>
div{
padding: 0;
}
.box{
width: 300px;
height: 300px;
/* 边框的3个要素,其中颜色,可以省略不写。不写默认是黑色。 */
border: 3px solid;
}
</style>
</head>
<body>
<div class="box">
 
</div>

线型的设置:

/* dotted点虚线 */
border: 3px dotted blue;

/* dashed矩形虚线 */
border: 3px dashed blue;

/* solid实线 */
border: 3px solid blue;

/* double内外双实线 */
border: 3px double blue;

/* groove沟槽状边框 */
border: 50px groove blue;

/* ridge菱形边框 */
border: 50px ridge blue;

可以发现菱形边框与沟槽状边框的区别是亮面和暗面相反

/* inset3D凹边 */
border: 50px inset blue;

/* outset3D凸边 */
border: 50px outset blue;

凹凸边的亮暗也是相反的

不过线型在不同浏览器有不同的显示效果比如,border:10px ridge red; 在chrome和firefox、IE中有细微差别:

chrome:

firefox:

IE:

谷歌和火狐差别不大,但ie的颜色明显深了很多

border属性能够被拆开

border是一个大综合属性,

border:1px solid red;  

border属性能够被拆开,有两大种拆开的方式:1) 按3要素:border-width、border-style、border-color2) 按方向:border-top、border-right、border-bottom、border-left

把边框border按3要素:

<style>
.box{
width: 300px;
height: 300px;
/* 按3要素拆开: */
border-width: 30px;
border-style: solid;
border-color: aqua;
}
</style>
</head>
<body>
<div class="box">
</div>
</body>

如果某一个小要素后面是空格隔开的多个值,那么就是上右下左的顺序

/* 10px 20px ---上下10  左右20 */
border-width: 10px 20px;
/* solid dashed dotted --- 上solid  左右dashed  下dotted */
border-style: solid dashed dotted;
/* red green blue yellow --- 上red  右green 下blue 左yellow */
border-color:red green blue yellow ;

把边框border按方向来拆开

<style>
.box{
width: 300px;
height: 300px;
/* 按照方向拆分 */
border-top: 30px solid red;
border-right: 30px solid green;
border-bottom: 30px solid blue;
border-left: 30px solid yellow;
}
</style>
</head>
<body>
<div class="box"></div>
</body>

把边框border按方向还能再拆一层,就是把每个方向的,每个要素拆开,一共12条语句:

/* 边框按方向还能再拆一层把每个方向按照3要素写 */
border-top-width:30px;
border-top-style:solid;
border-top-color:red;
border-right-width: 30px;
border-right:solid;
border-right-color:green;
border-bottom-width: 30px;
border-bottom-style: solid;
border-bottom-color: aqua;
border-left-width: 30px;
border-left-style:solid;
border-left-color:blue;

border可以没有

<style>
.box{
width: 300px;
height: 300px;
background-color: red;
/* 4个边都没有边框 */
/* border: none; */
 
border:30px solid blue;
/* 某一个边没有边框 */
border-left: none;
}
</style>
</head>
<body>
<div class="box">盒子</div>

outline轮廓线

outline轮廓线 在边框线的外面,它和盒模型没有任何关系。轮廓线不占据页面宽度。

去除input文本框的轮廓线:outline: none;

<style>
.txt{
width: 300px;
height: 26px;
line-height: 26px;
border: 1px solid greenyellow;
outline: none;
}
</style>
</head>
<body>
<input type="text" name="" id="" class="txt">
</body>

轮廓线不占据页面宽度。

outline: 20px solid orange;

 

所以,我们在实际项目中编写页面的时候,我们通常使用outline轮廓线去查看当前某个区块在页面中的位置。

border可以透明

透明是让颜色不可见,但是具体的某个方向的边框实际在浏览器渲染的时候,边框还是存在。

<style>
.box{
width: 0px;
height: 0px;
border-top: 200px solid transparent;
border-right: 200px solid green;
border-bottom: 200px solid transparent;
border-left: 200px solid transparent;
}
</style>
</head>
<body>
<div class="box"></div>
</body>

border制作小箭头:

<style>
.arrow{
width: 20px;
height: 20px;
border-top: 1px solid red;
border-left: 1px solid red;
transform: rotate(45deg);
margin: 50px 0 0 50px;
}
</style>
</head>
<body>
<div class="arrow"></div>
</body>

如上代码,三角形箭头原理:正方形的任意相邻的两边线然后旋转一定的角度,得到我们需要的任意方向的箭头,deg角度单位,rotate旋转角度.

  1. 小三角形的大小由正方形的宽高去控制

  2. 小三角形的粗细由border边框线的宽度去控制

  3. 小三角形的颜色由border边框线的颜色去控制

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值