首页 > 其他分享 >CSS笔记

CSS笔记

时间:2023-12-08 23:22:06浏览次数:32  
标签:动画 样式 可以 元素 笔记 选择器 CSS

1.CSS选择器是用于选取HTML文档中的元素的一种方式。常见的选择器包括:

  1. 元素选择器:通过元素的标签名来选取元素,例如pdiv等。
  2. 类选择器:通过元素的class属性来选取元素,使用.符号加上类名,例如.my-class
  3. ID选择器:通过元素的id属性来选取元素,使用#符号加上id值,例如#my-id
  4. 属性选择器:通过元素的某个属性来选取元素,使用[attr][attr=value]的形式,例如[href][href="https://www.example.com"]
  5. 伪类选择器:用于选取元素在特定状态下的样式,例如:hover:active:focus等。
  6. 组合选择器:可以将多个选择器组合在一起,以更精确地选取元素,例如div p表示选取所有<div>元素下的<p>元素。
  7. 通配符选择器:使用*表示匹配任意元素,但通常不推荐使用,因为它可能导致性能问题。

2.盒模型是CSS中用于描述元素在页面上的位置和大小的一种模型。它包括以下四个区域:

  1. 内容区域(content):这是元素内部的实际内容,如文本、图片等。可以通过设置widthheight属性来控制其大小。
  2. 填充区域(padding):这是元素的内容与边框之间的空白区域。可以通过设置padding属性来调整内容与边框之间的距离。
  3. 边框区域(border):这是元素的边框线,可以设置边框的颜色、宽度和样式。可以通过设置border属性来定义边框的样式。
  4. 外边距区域(margin):这是元素与其他元素之间的空白区域。可以通过设置margin属性来调整元素与其他元素之间的距离。

通过调整这些区域的宽度和高度,可以控制元素的布局和样式。例如,可以通过调整paddingmargin来调整元素内部的间距,通过调整border来改变元素的边框样式,以及通过调整widthheight来控制元素的大小。

3.CSS提供了多种布局方式,包括浮动、定位和弹性盒子等。这些布局方式可以帮助开发者实现页面的美观和易用性。

  1. 浮动(float):通过将元素设置为浮动,可以使其脱离正常的文档流,并向左或向右浮动。这可以用于创建多列布局或使文本环绕在图片周围。

  2. 定位(position):通过设置元素的position属性为absoluterelativefixedsticky,可以控制元素在页面上的位置。绝对定位元素相对于最近的已定位祖先元素进行定位;相对定位元素相对于其正常位置进行定位;固定定位元素相对于浏览器窗口进行定位;粘性定位元素在页面滚动时保持与指定元素的距离。

  3. 弹性盒子(flexbox):弹性盒子是一种现代的布局方式,它允许开发者在容器内的元素之间自动调整大小和顺序。通过使用display: flex属性,可以将容器设置为弹性盒子容器,并使用justify-contentalign-itemsflex-wrap等属性来控制元素的排列方式。

4.伪类:用于为元素添加特定的样式效果。常见的伪类有链接伪类(:link、:visited、:hover、:active)、焦点伪类(:focus)、伪元素(::before、::after)等。

伪类是CSS中用于为元素添加特定样式效果的一种选择器。它们通常与伪元素一起使用,以实现更复杂的样式效果。以下是一些常见的伪类:

  1. 链接伪类(Link Pseudo-class):用于定义链接的样式。常用的伪类有:link:visited:hover:active

    • :link:表示未被访问过的链接。
    • :visited:表示已被访问过的链接。
    • :hover:表示鼠标悬停在链接上时的样式。
    • :active:表示用户点击链接时的样式。
  2. 焦点伪类(Focus Pseudo-class):用于定义输入框或按钮获得焦点时的样式。常用的伪类有:focus

    • :focus:表示元素获得焦点时的样式。
  3. 伪元素(Pseudo-element):用于在元素内部插入内容或样式。常用的伪元素有::before::after::before:在元素的内容之前插入内容或样式。::after:在元素的内容之后插入内容或样式。

5.动画:CSS提供了丰富的动画功能,可以通过设置关键帧(@keyframes)来实现元素的平滑过渡效果

CSS提供了丰富的动画功能,可以通过设置关键帧(@keyframes)来实现元素的平滑过渡效果。关键帧是动画的关键点,通过在关键帧中定义元素的属性值,可以实现元素的动态变化。

以下是一些常用的CSS动画属性:

  1. 动画名称(animation-name):指定要应用的动画的名称。
  2. 动画时长(animation-duration):指定动画的持续时间,可以是固定的时间或由时间函数定义的动态时间。
  3. 动画延迟时间(animation-delay):指定动画开始之前的延迟时间。
  4. 动画迭代次数(animation-iteration-count):指定动画的播放次数,可以是无限次或有限次。
  5. 动画方向(animation-direction):指定动画的播放方向,可以是正向、反向或交替。
  6. 动画填充模式(animation-fill-mode):指定动画结束后元素的样式,可以是保持结束状态、向前填充或向后填充。
  7. 动画播放速度曲线(animation-timing-function):指定动画的速度曲线,可以控制动画的速度变化。
  8. 动画播放方式(animation-play-state):指定动画的播放状态,可以是暂停、运行或停止。
  9. 动画转换(animation-transform):指定动画过程中元素的转换效果,如缩放、旋转等。
  10. 动画偏移量(animation-offset):指定动画的起始位置,可以是相对于元素左上角的位置或相对于父元素的位置。

6.响应式设计:随着屏幕尺寸的变化,需要对页面进行自适应处理。CSS提供了媒体查询(media query)来实现不同屏幕尺寸下的样式调整。

响应式设计是一种网页设计方法,它根据屏幕尺寸的变化自动调整页面的布局和样式。CSS提供了媒体查询(media query)来实现不同屏幕尺寸下的样式调整。

媒体查询是CSS3中的一种特性,它允许开发者根据设备的特性(如屏幕宽度、高度等)来应用不同的样式规则。通过使用媒体查询,可以实现对不同屏幕尺寸的适配,使页面在不同设备上都能呈现出良好的用户体验。

以下是一个简单的媒体查询示例:

/* 当屏幕宽度小于等于600px时,应用以下样式 */
@media screen and (max-width: 600px) {
  body {
    background-color: lightblue;
  }
}

7.性能优化:在编写CSS时,需要注意以下几点以提高页面性能: 减少冗余代码:避免重复定义相同的样式规则。 使用浏览器缓存:将常用的CSS文件放在服务器上,以便浏览器缓存并提高加载速度。 压缩CSS文件:通过压缩工具去除不必要的空格和换行符,减小文件大小。  此外,还可以考虑以下性能优化方法:
  1. 使用CSS Sprites:将多个小图片合并成一个大图片,然后通过CSS的background-position属性来控制显示的图片。这样可以减少HTTP请求的数量,提高页面加载速度。

  2. 使用CSS3动画:CSS3提供了丰富的动画效果,可以替代一些JavaScript动画库,从而提高页面性能。但需要注意的是,过度使用动画可能会导致页面卡顿,影响用户体验。

  3. 使用CSS预处理器:如Sass、Less等,可以帮助开发者编写更简洁、易维护的CSS代码,同时也可以方便地进行变量、函数等复用,提高开发效率。

  4. 使用CSS优化工具:如CleanCSS、cssnano等,可以帮助开发者自动压缩、优化CSS代码,减小文件大小,提高页面加载速度。

  5. 使用CDN加速:将常用的CSS文件放在内容分发网络(CDN)上,以便用户从离自己最近的服务器获取资源,提高加载速度。

8.调试技巧:在开发过程中,可以使用浏览器开发者工具(如Chrome的开发者工具)来调试CSS样式。例如,可以使用“Elements”面板查看和修改HTML结构,使用“Console”面板查看和调试JavaScript代码,使用“Network”面板查看网络请求和响应等。

此外,还可以使用以下调试技巧:

  1. 使用浏览器的开发者工具中的“Sources”面板查看和修改CSS文件。可以在代码中设置断点,然后逐步执行代码,观察样式的变化。

  2. 使用“Inspector”面板查看元素的计算样式、布局信息等。可以手动修改样式属性,观察元素的变化,从而找到问题所在。

  3. 使用“Performance”面板分析页面的性能瓶颈。可以查看页面的加载时间、资源占用情况等,找出性能问题并进行优化。

  4. 使用“Debugger”面板进行调试。可以在JavaScript代码中设置断点,然后逐步执行代码,观察变量的值和调用栈等信息。

  5. 使用“Console”面板查看错误信息。当代码出现错误时,可以在控制台查看详细的错误信息,从而定位问题所在。

  6. 使用“Network”面板查看网络请求和响应。可以查看请求的URL、方法、头部信息等,以及响应的状态码、内容大小等,以便了解网络状况和排查问题。

 

标签:动画,样式,可以,元素,笔记,选择器,CSS
From: https://www.cnblogs.com/zjzj0207/p/17889265.html

相关文章

  • JavaScript笔记
    JavaScript的组成:     1.数据类型:JavaScript有8种基本数据类型,包括Undefined、Null、Boolean、Number、String、BigInt、Symbol和Object。变量:在JavaScript中,可以使用var、let或const关键字声明变量。函数:JavaScript中的函数是一种可重用的代码块,可以使用fun......
  • 软件构造笔记
    今天软件构造考试结束了,这门课真的上的听玄幻的主要通过对ppt的整理得到的笔记格式是word里的格式,有原件和ppt,但是不方便直接发  有重构的书pdf软件构造前言l 推荐书目代码大全 代码整洁之道  重构改善既有代码设计l 主要都是ppt里的  合肥工业大学张高峰......
  • 【CCFCSP】2209真题笔记
    -1.如此编码分析daisuki代数题了,直接无脑套公式子任务有提示,记得参考测试数据:1532767222222222222222预期结果:111111111111111AC:#include<iostream>usingnamespacestd;constintmaxn=25;intn,m,tmp;inta[maxn],b[maxn];......
  • 第二周阅读笔记|人月神话
    9.23阅读了贵族专制、民主政治和系统设计我发现这个作者写的还是蛮通俗易懂的,而且有点引经据典的味道,读着还蛮津津有味的。功能,而非简洁,总是被用来衡量设计人员工作的出色程度。这是错的,任何事情我们都应该从他的实用性出发,拒绝假大空。因此,易用性实际上需要设计的一致性和概念......
  • HTML笔记
    1.什么是HTMl:HTML(HyperTextMarkupLanguage)是一种用于创建网页的标准标记语言。它使用一系列标签来定义网页的结构、内容和样式。HTML文档由一系列的元素组成,这些元素包括标题、段落、链接、图片、列表等。通过使用HTML标签,开发者可以创建出具有交互性和动态效果的网页。2.HTML......
  • 二分——acwing算法基础课笔记
    个人笔记,欢迎补充、指正。此次完全以个人理解来写。整数二分 整数二分有两种,分别是找左边界和找右边界。 寻找符合要求的左边界:绿色点intbsearch_1(intl,intr){while(l<r){intmid=l+r>>1;//对应下界,最左if(check(mid))r=......
  • 秦疆的Java课程笔记:64 面向对象 构造器详解
    类中的构造器也称为构造方法,世在进行创建对象的时候必须要调用的。并且构造器有以下两个特点必须和类的名字相同必须没有返回类型,也不能写void构造器必须掌握!一个类即使什么也没写,也会存在一个方法//写一个空的Person类=========================publicclassPer......
  • <学习笔记> 二项式反演
    容斥原理容斥原理的式子\[|A1∪A2∪...∪An|=\sum_{1≤i≤n}|Ai|−\sum_{1≤i<j≤n}|Ai∩Aj|+...+(−1)^{n−1}×|A1∩A2∩...∩An|\]一般来说不会直接用容斥原理这个式子,而是考虑一种特殊情况:交集的大小只与交集的数量有关。也就是说,我们可以用$f[x]$来表示\(n\)个集合的......
  • 如何做读书笔记
    主要记录如何读书1高效阅读我们在上学时听到比较多一句话就是“读书无用论”,但是相反的是很多大佬讲座时都会劝我们多读书,为什么会有这么大的反差?因为读书方式不同!“无用”是无效阅读,与之相反的就是高效阅读。高效阅读关键在于做,而不只是读。为什么会这样说?因为我们阅读目的......
  • 用html+css+js做canvas烟花模拟网页动画代码
    圣诞节、元旦就要到了,本案例我们将用html+css+js做canvas烟花模拟网页动画代码,程序员的浪漫这不就来了嘛,与家人朋友一起看烟花吧!   附源码<!DOCTYPEhtml><htmllang="en"><head> <metacharset="UTF-8"/> <title>烟花模拟器</title> <metaname="viewport"......