【CSS】CSS3 新特性

1. 选择器增强

CSS3 引入了更多的选择器,如属性选择器、伪类选择器等。

  • 属性选择器:允许你根据元素的属性或属性值来选择元素。

    css 复制代码
    input[type="text"] {
        border: 1px solid #ccc;
    }
  • 伪类选择器 :如 :nth-child():last-child 等,提供了更丰富的选择能力。

    css 复制代码
    li:nth-child(2) {
        font-weight: bold;
    }

2. 圆角(Border-radius)

border-radius 属性可以用来创建圆角边框。

css 复制代码
.box {
    border-radius: 10px;
}

3. 阴影和反射(Box-shadow 和 Text-shadow)

box-shadowtext-shadow 属性允许在元素上添加阴影效果。

css 复制代码
.box {
    box-shadow: 5px 5px 5px #888888;
}

.text {
    text-shadow: 2px 2px 2px #ccc;
}

5. 背景和边框的渐变(Linear-gradient 和 Radial-gradient)

CSS3 允许通过 linear-gradientradial-gradient 创建渐变背景。

css 复制代码
.gradient-background {
    background: linear-gradient(to right, #ff7e5f, #feb47b);
}

.circle-gradient {
    background: radial-gradient(circle, #ff7e5f, #feb47b);
}

6. 弹性盒子(Flexbox)

Flexbox 提供了一种更加高效的方式来布局、对齐和分配容器内项目的空间。

css 复制代码
.flex-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

7. 网格布局(Grid Layout)

CSS Grid Layout 是一种二维布局系统,允许你在水平和垂直方向上创建复杂的布局。

css 复制代码
.grid-container {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: 100px 200px;
}

8. 转换(Transforms)

transform 属性允许你对元素进行旋转、缩放、倾斜或移动。

css 复制代码
.rotated-element {
    transform: rotate(45deg);
}

9. 过渡(Transitions)

CSS3 过渡效果允许你平滑地在两个属性值之间进行动画过渡。

css 复制代码
.button {
    transition: background-color 0.5s ease;
}

.button:hover {
    background-color: #39f;
}

10. 动画(Animations)

CSS3 动画允许你创建复杂的动画效果,而无需使用 JavaScript。

css 复制代码
@keyframes slidein {
    from {
        margin-left: 100%;
        width: 300%;
    }
    to {
        margin-left: 0%;
        width: 100%;
    }
}

.slidein-element {
    animation: slidein 5s;
}

11. 媒体查询(Media Queries)

CSS3 增强了媒体查询的能力,允许你根据多种设备特性来应用样式。

css 复制代码
@media screen and (min-width: 600px) {
    .container {
        width: 50%;
    }
}
相关推荐
Hopebearer_19 分钟前
页面突然只剩 DOM?一次静态资源版本错配排查
前端·部署
东风破_1 小时前
ESLint 是什么?为什么你的项目需要它?
前端·后端·代码规范
圣殿骑士-Khtangc2 小时前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
BigTopOne3 小时前
【ijkplayer】 硬解码流程
前端
kyriewen4 小时前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek
捡田螺的小男孩4 小时前
什么是 Skill?手把手带你写一个简单有用的 Skill!
前端·后端·程序员
IT_陈寒4 小时前
Redis集群这个坑,差点让我通宵
前端·人工智能·后端
90后的晨仔4 小时前
uni-app 路由跳转与页面导航 —— 终极详解(对标 iOS / Android / 鸿蒙三端原生)
前端
Heo5 小时前
大厂前端调试不能只会debugger
前端·javascript·面试
用户2181697049305 小时前
Flutter (十七) 网络请求
前端