css系列-border,outline

本文详细介绍了CSS中边框(border)的各种样式、宽度、颜色及圆角设置方法,同时讲解了轮廓线(outline)的样式、宽度、颜色及在表单元素中的应用。

边框设计

样式选择

类型描述
none定义无边框。
dotted定义点状边框。在大多数浏览器中呈现为实线。
dashed定义虚线。在大多数浏览器中呈现为实线。
solid定义实线。
double定义双线。双线的宽度等于 border-width 的值。
groove定义 3D 凹槽边框。其效果取决于 border-color 的值。
ridge定义 3D 垄状边框。其效果取决于 border-color 的值。
inset定义 3D inset 边框。其效果取决于 border-color 的值。
outset定义 3D outset 边框。其效果取决于 border-color 的值。

一次定义四个边

h2 {
	border-style: double;
}

样式顺序为上、右、下、左,可以分别进行定义

h2 {
	border-style: outset solid dotted double;
	border-width: 8px;
}

单独设置一边样式

规则说明
border-top-style顶边
border-right-style右边
border-bottom-style下边
border-left-style左边
border-style四边
h2 {
	border-top-style: double;
	border-width: 8px;
}

边框宽度

边框可以通过以下规则来设置

规则说明
border-top-width顶边
border-right-width右边
border-bottom-width下边
border-left-width左边
border-width四边

边框颜色

规则说明
border-top-color顶边
border-right-color右边
border-bottom-color下边
border-left-color左边
border-color四边

简写规则

规则说明
border-top顶边
border-right右边
border-bottom下边
border-left左边
border四边

设置底部边框

border-bottom: solid 5px red;

行元素边框

行元素也可以进行边框设置

em {
	border-bottom: solid 2px red;
}

圆角边框

使用 border-radius 规则设置圆角,可以使用px | % 等单位。也支持四个边分别设置。

选项说明
border-top-left-radius上左
border-top-right-radius上右
border-bottom-left-radius下载
border-bottom-right-radius下右
h2 {
	border-radius: 10px;
	border: solid 2px red;
}

通过边框绘制圆

div {
  width: 100px;
  height: 100px;
  border: solid 3px red;
  border-radius: 50%;
}

定义不同边

border-radius: 10px 30px 50px 100px;

行元素绘制圆角

  


em {
	border-radius: 50%;
	border-bottom: solid 2px red;
}

轮廓线

元素在获取焦点时产生,并且轮廓线不占用空间。可以使用伪类 :focus 定义样式。

  • 轮廓线显示在边框外面
  • 轮廓线不影响页面布局

线条样式

描述
none默认。定义无轮廓。
dotted定义点状的轮廓。
dashed定义虚线轮廓。
solid定义实线轮廓。
double定义双线轮廓。双线的宽度等同于 outline-width 的值。
groove定义 3D 凹槽轮廓。此效果取决于 outline-color 值。
ridge定义 3D 凸槽轮廓。此效果取决于 outline-color 值。
inset定义 3D 凹边轮廓。此效果取决于 outline-color 值。
outset定义 3D 凸边轮廓。此效果取决于 outline-color 值。
outline-style: double;

线宽设置

outline-width: 10px;

线条颜色

outline-color: red;

组合定义

outline: red solid 2px;

表单轮廓线

表单默认具有轮廓线,但有时并不好看,使用以下样式规则去除。

input:focus {
	outline: none;
}
<think>好的,用户想了解如何使用CSS实现外边框的圆角效果,特别是关于border-radius的应用。我需要结合之前的引用内容,整理出清晰的步骤。首先,我应该解释border-radius的基本用法,比如设置统一值或分别四个角。然后,可能需要提到如何单独控制每个角的水平垂直半径,比如border-top-left-radius的用法。还要注意,用户提到的是“外边框”,所以需要确认border-radius确实适用于外边框,而不仅仅是背景或内边距。可能需要举例说明不同形状的圆角,比如圆形、椭圆等。此外,引用中提到了边框图片盒子阴影,但用户的问题集中在圆角,所以暂时不需要深入这些部分,但如果有相关的内容可以简要提及。还要注意代码示例,确保使用正确的语法,比如用px、百分比等单位。最后,可能需要提醒兼容性问题,但现代浏览器普遍支持border-radius,所以可能不需要强调太多。另外,用户提供的引用中有提到单独设置各个角的方法,应该包含在回答中,并给出示例代码。同时,要确保回答结构清晰,分点说明,并附上示例帮助理解。可能需要检查是否有遗漏的重要细节,比如是否支持简写属性,或者如何处理不同形状的边框。总之,回答需要覆盖基本用法、单独设置各个角、单位使用、实际示例以及可能的效果展示。</think>### CSS实现外边框圆角效果的完整方法 通过`border-radius`属性可实现**外边框圆角效果**,该属性作用于元素边框外侧,支持多种数值格式组合方式。以下是具体实现方法应用场景: --- #### 一、基础用法 1. **统一圆角值** 所有角设置相同圆角半径: ```css div { border-radius: 20px; /* 四个角均为20px圆角 */ } ``` 等效于: ```css div { border-top-left-radius: 20px; border-top-right-radius: 20px; border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; } ``` 2. **不同圆角值组合** 通过斜杠分隔水平垂直半径,实现椭圆形圆角: ```css div { border-radius: 50px / 30px; /* 水平半径50px,垂直半径30px */ } ``` --- #### 二、精细控制各个角 1. **分别定义四个角** 顺序:左上 → 右上 → 右下 → 左下 ```css div { border-radius: 10px 20px 30px 40px; } ``` 2. **单独设置单个角** 精确控制每个角的水平垂直半径: ```css div { border-top-left-radius: 60px 120px; /* 左上角水平60px,垂直120px */ border-bottom-right-radius: 30% 50%; /* 右下角水平30%,垂直50% */ } ``` --- #### 三、特殊形状实现 1. **圆形元素** 当元素为正方形时,设置`50%`即可得到圆形: ```css div { width: 200px; height: 200px; border-radius: 50%; } ``` 2. **胶囊按钮** 矩形元素设置大圆角值: ```css button { width: 120px; height: 40px; border-radius: 20px; /* 高度的一半 */ } ``` --- #### 四、复合使用技巧 1. **与边框样式结合** 圆角效果会作用于边框外侧: ```css div { border: 5px solid #aec529; border-radius: 15px; } ``` 2. **配合背景裁切** 避免背景色溢出圆角区域: ```css div { border-radius: 10px; background-clip: padding-box; } ``` --- #### 五、注意事项 1. **单位支持**:支持`px`、`em`、`%`等单位,百分比基于元素尺寸计算 2. **浏览器兼容性**:现代浏览器均支持,IE9+需前缀`-ms-` 3. **轮廓线不受影响**:`outline`属性绘制的轮廓不会应用圆角[^1] --- ### 示例代码 ```html <style> .box { width: 150px; height: 150px; background-color: #aec529; border: 3px solid #2c5fa8; border-radius: 20px 40px 60px 80px / 30px 50px 70px 90px; } </style> <div class="box"></div> ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值