CSS 基础 4

简介: CSS 基础 4

圆角边框

       在CSS3中新增了圆角边框的样式, 这样我们的盒子就可以变成圆角了.

圆角在我们生活中很常见, 例如:

① 我们浏览器的标签 显示就会是一个圆角边框

② 浏览器的搜索栏

        如何设置圆角边框??

       设置属性 border-radius 即可

语法

       border-radius: lengthpx;  /*  length 的单位为px  */

       /* radius 半径, 圆与边框的交集形成圆角效果 */

        length就是我们设置的圆的半径.

例如:

    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 20px;
 
            margin: 200px auto;
        }
    </style>
    <div>
 
    </div>

显示如下:  

如果把border-radius: 20px; 改为 border-radius: 50%; 圆角边框就会变成一个圆:

       也就是说一个圆形的盒子, 需要一个正方形的盒子, 然后设置圆角边框为50%, 就可以设置上面这个样式了.

总结一下:

  • 参数值可以是数值或者百分比的形式
  • 如果是正方形, 想要设置一个圆, 把数值修改为高度或者宽度的一半即可, 或直接写为50%
  • 如果是一个矩形, 想要做成一个椭圆, 把半径设置为高度的一半就可以了
  • 属性的简写: 写一个数值是代表四个角的半径, 但是还有两个参数, 三个参数, 四个参数的值
    一个值: 四个角都是一个值
    两个值: 左上右下是第一个值, 右上左下是第二个值
    四个值: 从左到右依次是, 左上, 右上, 右下, 左下
  • 分开写: border-top-left-radius、border-top-right-radius、border-bottom-right-radius和border-bottom-left-radius

盒子阴影

什么是盒子阴影

       什么是盒子阴影? 下面有个很简单的例子, 下面是小米商城的一个例子, 如下:

当我把鼠标放上去的时候, 这个盒子周围就会显示一圈阴影:

看不出来?? 我们放大来看看:

这是没有把鼠标放上去的情况:

当我把鼠标放上去之后:

明显黑了一圈, 我们再吸取色号看看:

没有放上去的色号为#FFFFFF

放上去之后的色号为#F0F0F0

       这就是我们css3中新增的阴影效果.

在css3中我们可以设置box-shadow属性来为盒子添加阴影

语法为:

box-shadow: h-shadow v-shadow blur spread color inset;

box-shadow参数

参数解析:

值 描述
h-shadow 必须. 水平阴影的位置, 允许负值
v-shadow 必须. 垂直阴影的位置, 允许负值
blur 可选, 模糊距离
spread 可选, 阴影的尺寸
color 可选, 阴影的颜色
inset 可选, 将外部阴影改为内部阴影
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 20px;
 
            margin: 200px auto;
        }
    </style>
    <div>
 
    </div>

举个例子, 这里有个盒子, 如下:

下面我们设置这个阴影, 添加box-shadow属性如下:

    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 20px;
            margin: 200px auto;
 
            /* 添加的box-shadow属性 */
            box-shadow: 20px 20px red;
        }
    </style>
    <div>
 
    </div>

结果显示如下:

模糊

       模糊为blur, 单位为px

如果添加模糊选项, 也就是blur如下:

       div {

           width: 200px;

           height: 200px;

           background-color: pink;

           border-radius: 20px;

           margin: 200px auto;

           /* 添加的box-shadow属性 */

           box-shadow: 20px 20px 10px red;

       }

可以看到如下效果:  (可以看到这个阴影的边缘模糊化了)

阴影大小

添加第四个属性, 也就是spread, 单位为px, 可以让阴影更大, 例如:

           box-shadow: 20px 20px 10px 10px red;

如果将spread属性设置为40px呢 ?

           box-shadow: 20px 20px 10px 40px red;

内阴影

       使用inset属性来添加内阴影

例如, 有如下盒子:

    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 20px;
            margin: 200px auto;
 
            /* 添加的box-shadow属性 */
            box-shadow: 20px 20px 10px red;
        }
    </style>
    <div>
 
    </div>

现在在box-shadow中添加 内阴影属性如下:

box-shadow: 20px 20px 10px red inset;

影子就在盒子里面了.

需要注意的是:

  • 盒子默认是outset的, 但是不可以写这个单词, 如果写上了box-shadow这个属性就会失效.
  • 盒子阴影不占用空间, 不会影响其他盒子排列

鼠标互动效果hover

       但是我们想做到那种, 鼠标一放上去就可以显示阴影, 鼠标拿开阴影就会消失的效果, 该如何来做呢? 这个就要用到我们的伪类标签了.

    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 20px;
            margin: 200px auto;
 
            /* 添加的box-shadow属性 */
        }
 
        div:hover {
            box-shadow: 10px 10px 10px -4px rgba(0, 0, 0, 0.3);
 
        }
    </style>
    <div>
 
    </div>

 

将鼠标放上去之后:

文字阴影

        在css3中, 我们可以使用text-shadow属性来设置文字阴影, 应用于文本.

       对于其文本的样式, 我们可以参考一下盒子的阴影

参数

值 描述
h-shadow 必须, 水平阴影的位置, 允许负值
v-shadow  必须, 垂直阴影的位置, 允许负值
blur 可选, 模糊的距离
color 可选, 阴影的颜色

例如:

    <style>
        div {
            width: 200px;
            height: 200px;
            border-radius: 20px;
            margin: 200px auto;
 
            /* 添加的text-shadow属性 */
            text-shadow: 5px 5px 2px rgba(0, 0, 0, 0.3);
        }
    </style>
    <div>
        哈哈哈我是买火柴的小女孩
    </div>


目录
相关文章
|
8月前
|
存储 人工智能 云计算
2026年OpenClaw(Clawdbot)阿里云计算巢一键部署+本地搭建超简单流程,零基础也能上手
OpenClaw的核心价值的在于,它并非单纯的聊天机器人,而是一款能自主执行任务的“数字员工”,可通过自然语言指令完成文件处理、跨工具协同、代码辅助、知识库搭建等各类流程化工作,无需用户掌握复杂编程技能[superscript:3]。但很多用户被“部署难、配置复杂”的问题劝退,事实上,阿里云已针对2026年OpenClaw最新版本,推出计算巢一键部署方案,将复杂流程高度封装,零基础小白10分钟即可完成部署;同时本地搭建流程也已简化,支持Windows、macOS、Linux全系统,无需专业技术储备。
666 13
|
9月前
|
人工智能 算法 架构师
AI Agent 职业路线全解析:从入门到专家的进阶指南
大模型正进化为能自主感知、规划、执行的AI Agent。AI Agent工程师需掌握思维设计、记忆管理、工具调用等核心能力,职业路径分原型落地、企业级方案、领域专家三阶段,是人机交互升级与垂直领域溢价的长青赛道。(239字)
593 1
|
12月前
|
域名解析 运维 监控
如何检测服务器是否被入侵?解析5大异常指标
本文系统介绍了服务器入侵的五大检测维度:硬件资源、网络流量、系统日志、文件完整性及综合防护。涵盖CPU、内存异常,可疑外联与隐蔽通信,登录行为审计,关键文件篡改识别等内容,并提供实用工具与防护建议,助力运维人员快速发现潜在威胁,提升系统安全防御能力。转载链接:https://www.ffy.com/latest-news/1916688607247077376
708 0
如何检测服务器是否被入侵?解析5大异常指标
|
缓存 监控 算法
高并发系统下,如何用限流算法优雅地保护你的服务?
在微服务架构中,面对突发流量,限流成为保障系统稳定的关键手段。本文深入解析基于 Uber/Limit 的限流实现,重点讲解漏桶算法原理及其在实际场景中的应用。通过限流,我们不仅能控制请求流量,还能保护后端服务资源,与熔断机制协同工作,提升系统容错能力。文中还介绍了限流的最佳实践,包括分层限流、差异化策略、动态调整和优雅降级,帮助开发者构建更具弹性的服务。
597 0
高并发系统下,如何用限流算法优雅地保护你的服务?
|
机器学习/深度学习 人工智能 自然语言处理
Genesis:卡内基梅隆大学联合 20 多所研究机构开源生成式物理引擎,能够模拟各种材料、物体和物理运动现象
Genesis是由卡内基梅隆大学联合20多所研究机构开源的生成式物理引擎,能够模拟世界万物,具有高度的物理准确性和快速的模拟速度,适用于机器人仿真、游戏开发、电影特效制作等多个领域。
1155 21
Genesis:卡内基梅隆大学联合 20 多所研究机构开源生成式物理引擎,能够模拟各种材料、物体和物理运动现象
|
存储 消息中间件 SQL
流存储Fluss:迈向湖流一体架构
本文整理自阿里云高级开发工程师罗宇侠在Flink Forward Asia 2024上海站的分享,介绍了湖流割裂的现状与挑战,Fluss湖流一体架构的设计与优势,以及未来规划。内容涵盖湖流割裂的现状、Fluss架构详解、湖流一体带来的收益,以及未来的生态扩展和技术优化。
1483 11
流存储Fluss:迈向湖流一体架构
|
机器学习/深度学习 搜索推荐 算法
无需训练即可创建数字人,字节PersonaTalk视频口型编辑超SOTA
字节跳动研究人员提出了PersonaTalk,一种创新的音频驱动视觉配音方法,通过两阶段框架实现高保真度和个性化的口型同步视频生成。该方法无需特定人物训练,具有广泛的应用前景。
1367 11
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
1431 2
|
JavaScript
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
575 0
|
存储 缓存 数据管理
ceph存储 一文看懂目录配额(从入门到进阶,内涵完整流程和源码分析)
在Ceph文件系统(CephFS)中,目录配额是一项功能,它允许管理员限制特定目录下可以使用的存储空间总量和/或文件数量。这项功能对于控制资源消耗和防止个别用户或应用程序过度占用共享存储资源特别有用。
1544 1

热门文章

最新文章