📜  CSS教程(1)

📅  最后修改于: 2023-12-03 14:40:23.163000             🧑  作者: Mango

CSS教程

CSS(Cascading Style Sheets) 是一种用来描述网页样式的语言,它被用来控制网页的布局、颜色、字体等样式。

CSS语法

CSS 规则由两个主要的部分构成:选择器和声明。

选择器

CSS 选择器用于选择 HTML 元素,并设置元素的样式。

以下是常见的选择器类型:

  • 标签选择器:通过 HTML 标签名来选择元素。
  • 类选择器:通过 HTML class 属性来选择元素。
  • ID 选择器:通过 HTML id 属性来选择元素。
  • 属性选择器:通过 HTML 属性值来选择元素。

示例:

/* 标签选择器 */
h1 {
    color: blue;
}

/* 类选择器 */
.class {
    color: green;
}

/* ID 选择器 */
#id {
    color: red;
}

/* 属性选择器 */
[type='text'] {
    border: 1px solid black;
}
声明

声明由属性和值组成,用于给选中的元素设置样式。

以下是常见的样式属性:

  • color:设置文本颜色。
  • background-color:设置背景颜色。
  • font-size:设置字体大小。
  • font-family:设置字体。
  • text-align:设置文本对齐方式。
  • border:设置边框。

示例:

/* 设置字体颜色和大小 */
h1 {
    color: blue;
    font-size: 24px;
}

/* 设置背景颜色和边框 */
div {
    background-color: yellow;
    border: 1px solid black;
}

/* 设置文本对齐方式 */
p {
    text-align: center;
}
CSS盒模型

CSS 盒模型用于描述元素占据的空间,包括元素的内容、内边距、边框和外边距。

盒模型图示

内容

元素的实际内容,包括文本、图片等。

内边距

元素的内部空间,位于内容和边框之间。

div {
    padding: 10px;
}
边框

元素的边框,位于内容和外边距之间。

div {
    border: 1px solid black;
}
外边距

元素的外部空间,位于边框和相邻元素之间。

div {
    margin: 10px;
}
CSS布局

CSS 布局用于控制元素在页面中的位置和大小,主要有以下几种方式:

相对定位

将元素相对于其正常位置进行移动。

div {
    position: relative;
    left: 10px;
    top: 10px;
}
绝对定位

将元素相对于其最近的已定位祖先元素进行移动,如果没有已定位的祖先元素,则相对于文档进行定位。

div {
    position: absolute;
    left: 10px;
    top: 10px;
}
浮动

将元素从正常文档流中移除,并指定元素相对于左侧或右侧的位置。

div {
    float: left;
}
弹性盒子

简称 Flexbox,是一种新的布局方式,可以在不同屏幕上自适应地展示内容。

.container {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
}
CSS动画

CSS 动画用于向页面中添加动态效果,可以改变元素的位置、大小、颜色等属性。

以下是一些常见的 CSS 动画效果:

过渡

当元素属性从一种状态变为另一种状态时,可以使用过渡效果。

div {
    transition: all 0.5s;
}

div:hover {
    transform: rotate(90deg);
}
关键帧

使用关键帧动画,可以精确地控制元素的属性变化。

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

div {
    animation: rotate 2s linear infinite;
}
动画

CSS 动画可以连续地改变元素的属性,实现更加复杂的动态效果。

div {
    animation: move 2s ease-in-out infinite alternate;
}

@keyframes move {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(100px);
    }
}
总结

以上是 CSS 的一些基本知识点,包括语法、盒模型、布局和动画等。通过这些知识点的了解,可以更好地掌握 CSS,实现更加丰富多彩的页面效果。