day02--HTML CSS

news2024/12/24 8:52:26

一、HTML表单

表单的作用是用于采集用户再页面上填入的数据,并发送给后端服务器,经常用于用户注册、登录、xx信息添加、xx信息修改

1.1表单

1、input表示文本框

        type属性:负责配置不同的输入框类型

                text:普通文本框

                password:密码框

                date:日期选择框

                radio:单选框,checked属性定义默认选中

                checkbox:复选框,checked属性定义默认选中

               file:文件上传,multiple属性定义可多选

                submit:提交按钮

                reset:重置按钮

                button:普通按钮,通常与js结合使用

                hidden:隐藏域

        name属性:input框的名称,指向后台传入参数的名称

        value属性:用户输入的内容,或者按钮展示的文字

        placeholder属性:input中提示的文本

2、form标签:嵌套多个input标签,收集用户填写的数据,上传到服务器,配合submit和reset完成提交和重置功能

        action属性:配置数据提交的服务器地址

        method属性:(提交方式)

                get:将参数以字符串的形式拼接到地址后方,缺点:参数大小有限制

                post:参数大小无限制,将数据存入请求体中

3、下拉框:使用select和option共同完成

        select:声明下拉框

                name属性:提交到服务器的参数名

        option:下拉框中的每个选项

                value属性:选项传递到服务器的真实数据

                selected属性:默认选中

4、文本域:textarea,生成一个多行多列的文本输入域

        rows:定义行数

        cols:定义列数

5、页签:

        使用方式一:

                使用<label></label>标签,将文字和其他html标签包裹在一起

        使用方式二:

                1.使用<label></label>标签包裹文字

                2.在需要拼接的其他标签上设置一个唯一的id

                3.在label通过for和其他标签关联到一起

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>表单</title>
</head>
<body>
    <form action="#/" method="post">
        用户名:<input type="text" name="username" placeholder="请输入用户名"><br>
        密 码:<input type="password" name="password" placeholder="请输入密码"><br>
        出生日期:<input type="date" name="birthday"><br>
        性 别:<label>男<input type="radio" name="sex"></label>
        <label for="nv">女</label><input id="nv" type="radio" name="sex"><br>
        爱 好: 抽烟<input type="checkbox" name="hobby">
               喝酒<input type="checkbox" name="hobby">
               烫头<input type="checkbox" name="hobby"> <br>
        头 像:<input type="file" name="files" multiple><br>
        <input type="submit" value="提交内容">
        <input type="reset" value="重置内容">
        <input type="button" value="普通按钮"><br>
        这里啥也没有:<input type="hidden" value="100"><br>
        居住地:<select name="city">
            <option value="bj">北京</option>
            <option value="sh">上海</option>
            <option value="sz">深圳</option>
            <option value="tj" selected>天津</option>
            <option value="hz">杭州</option>
            <option value="nc">南昌</option>
        </select><br>
        专 业:<br>
        <select name="zhuanye" multiple>
            <option value="0">数学</option>
            <option value="1">自动化</option>
            <option value="2">计算机</option>
            <option value="3">热能</option>
        </select><br>
        自我介绍:<br>
        <textarea name="dec" rows="5"></textarea>
    </form>
</html>

二、CSS入门

CSS(层叠样式表)用于HTML页面的美化。

HTML引入CSS的三种方式:

  1. 行内样式:定义在标签的属性中, 作用于当前标签

  2. 内部样式:定义在页面的head部分, 作用于当前页面中的所有(部分)标签

优先级: 行内样式 > (内部样式 外部样式 后面覆盖前面)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HTML引入CSS</title>
    <!-- 声明一个内部样式 -->
    <!-- 当前页面上所有h1标签,颜色紫色 -->   
     <style>
        h1 {
            color: blueviolet;
        }
     </style>
     
</head>
<body>
​
    <!-- 行内样式 -->
    <h1 style="color: aqua;">行内样式</h1>
    <h1>内部样式</h1>
</body>
</html>

 

   3.  外部样式:定义在页面外部(同级目录下创建一个my.css文件,在文件中写样式),通过link标签引入到页面中,作用于所有引入此样式文件的页面标签

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HTML引入CSS</title>
    <!-- 声明一个外部样式 -->
     <link rel="stylesheet" href="./my.css">
</head>
<body>
    <!-- 行内样式 -->
    <h1 style="color: aqua;">行内样式</h1>
    <h1>外部样式</h1>
​
</body>
</html>

 

三、CSS选择器

选择器的作用是用来找出页面中一组特定的标签,选择器大方向上分为基础选择器和复合选择器以及伪选择器。

3.1 基础选择器

3.1.1 标签选择器

作用:使用标签名选中一类标签,然后设置样式

语法:标签名 { css样式 }

注意:标签选择器无法差异化同名标签的显示效果

<!DOCTYPE html>
<html lang="en">
​
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>标签选择器</title>
    
    <style>
      /*1. 将所有的span文字大小设置为16px, 颜色是红色 */
      span {
        font-size: 16px;
        color: red;
      }
      /*2. 将所有图片大小设置为50 * 50*/
      img {
        width: 50px;
        height: 50px;
      }
      /* 3. 将表格中的所有文字设置居中效果*/
      td {
        text-align: center;
      }
    </style>
    
</head>
​
<body>
    
  <span>古力娜扎</span>
  <span>迪丽热巴</span>
  <span>黑寡妇</span>
  <span>钢铁侠</span>
  <span>超人</span>
  <span>灭霸</span>
​
  <table border="1px" width="800px" cellpadding="0" cellspacing="0">
    <tr>
      <th>编号</th>
      <th>图像</th>
      <th>姓名</th>
      <th>地址</th>
      <th>操作</th>
    </tr>
    <tr>
      <td>1</td>
      <td>
        <img src="../img/autor.jpg">
      </td>
      <td>张三</td>
      <td>西安</td>
      <td>
        <a href="###">修改</a>
        <a href="###">删除</a>
      </td>
    </tr>
  </table>
</body>
​
</html>
3.1.2 类选择器

作用:使用标签的class属性选中一类标签

语法:.class属性值{ css样式 }

步骤:1. 在目标标签上添加class=""属性

           2. 使用类选择器选中标签,然后设置样式

注意:一个类选择器可以供多个标签使用,一个标签也可以使用多个类选择器,需要使用空格隔开

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>类选择器</title>
    
    <style>
       /* 1. 所有女性,文字变红*/
       .woman {
          color: red;
       }
        /*2. 所有英雄,字体加粗*/
        .hero{
          font-weight: bolder;
        }
        /*3. 标题背景色设置 #DEE3E6 普通行背景色设置 #F5F5F5*/
        .bt{
          background-color: #dee3e6;
        }
        .pt{
          background-color: #f5f5f5;
        }
    </style>       
    
</head>
<body>
​
  <span class="woman">古力娜扎</span>
  <span class="woman">迪丽热巴</span>
  <span class="woman  hero">黑寡妇</span>
  <span class="hero">钢铁侠</span>
  <span class="hero">超人</span>
  <span>灭霸</span>
​
  <table border="1px" width="600px" cellpadding="0" cellspacing="0">
    <tr class="bt">
      <th>编号</th>
      <th>姓名</th>
      <th>地址</th>
      <th>操作</th>
    </tr>
    <tr class="pt">
      <td>1</td>
      <td>张三</td>
      <td>西安</td>
      <td>
        <a href="###">修改</a>
        <a href="###">删除</a>
      </td>
    </tr>
    <tr class="pt">
      <td>2</td>
      <td>李四</td>
      <td>武汉</td>
      <td>
        <a href="###">修改</a>
        <a href="###">删除</a>
      </td>
    </tr>
    <tr class="pt">
      <td>3</td>
      <td>王五</td>
      <td>北京</td>
      <td>
        <a href="###">修改</a>
        <a href="###">删除</a>
      </td>
    </tr>
  </table>
</body>
</html>

运行结果:

3.1.3 id选择器和通配符选择器

id选择器

作用:使用id属性选中一个标签

语法:#id{css样式}

步骤:1. 在目标标签上添加id=""属性

           2. 使用id选择器选中标签,然后设置样式

注意:一个id选择器在一个页面上只能用一次(html不建议页面上的元素有相同的id名称)

通配符选择器

作用:查找页面所有标签,设置相同样式

语法:*{ css样式 }

注意:不需要调用,浏览器自动查找页面所有标签,设置相同的样式;优先级最低

<!DOCTYPE html>
<html lang="en">
​
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>id选择器和通配符选择器</title>
  
    <style>
      /* id选择器: 1. 将灭霸变成紫色 20px */
      #boss{
        color:purple;
        font-size: 20px;
      }
      /*  通配符选择器: 2. 将页面上所有文字变成50px */
      * {
        font-size: 50px;
      }
    </style>
​
</head>
​
<body>
  <span>古力娜扎</span>
  <span>迪丽热巴</span>
  <span>黑寡妇</span>
  <span>钢铁侠</span>
  <span>超人</span>
  <span id="boss">灭霸</span>
</body>
​
</html>

 

3.2 复合选择器

由多个基础选择器,通过不同的方式组合形成的选择器,它可以更准确、更高效的选择目标元素(标签)

3.2.1 后代选择器

作用:选中某元素的后代元素

语法:父选择器 子选择器 { css样式 }

<!DOCTYPE html>
<html lang="en">
​
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>后代选择器</title>
   
    <!-- 将所有div下所有span中的文字设置为红色 -->
     <style>
        div span{
            color: red;
        }
     </style>
    
</head>
​
<body>
​
    <span>span</span>
    <div>
        <span>
            div-span
        </span>
        <p>
            <span>div-span-span</span>
        </p>
    </div>
​
</body>
</html>

 

3.2.2 子代选择器

作用:选中某元素的字代元素(最近的子级)

语法:父选择器 > 子选择器 { css样式 }

<!DOCTYPE html>
<html lang="en">
​
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>子代选择器</title>
   
    <!-- 将所有div中一级span中的文字颜色变成红色 -->
    <style>
        div > span{
            color: red;
        }
    </style>
</head>
​
<body>
    <span>span</span>
    <div>
        <span>
            div-span
        </span>
        <p>
            <span>div-span-span</span>
        </p>
    </div>
</body>
​
</html>

 

3.2.3 并集选择器

作用:选中多组标签设置相同的样式

语法:选择器1, 选择器2, …, 选择器N { css样式 }

<!DOCTYPE html>
<html lang="en">
​
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>并集选择器</title>
    
     <!-- 将div和span中的文字设置为红色 -->
    <style>
        div,p,span{
            color: red;
        }
    </style>
​
</head>
​
<body>
​
    <div> div 标签</div>
    <p>p 标签</p>
    <span>span 标签</span>
</body>
​
</html>

 

3.3 伪选择器

3.3.1 一般伪选择器

作用:伪类表示元素状态,选中元素的某个状态设置样式

语法:选择器:状态{ css样式 } 状态有四种:link-访问前 visited-访问后 hover-鼠标悬停 active-点击时

注意:如果要给超链接设置以上四个状态,需要按 LVHA 的顺序书写

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>一般伪类选择器</title>
​
    <style>
        /*修改a标签,让超链接在访问前后,鼠标悬停和点击样式一样*/
        a:link{
            color: royalblue;
            text-decoration: none;/*无下划线*/
        } 
        a:visited{
            color: royalblue;
            text-decoration: none;/*无下划线*/
        } 
        a:hover{
            color: royalblue;
            text-decoration: none;/*无下划线*/
        } 
        a:active{
            color: royalblue;
            text-decoration: none;/*无下划线*/
        }
​
        .box:hover{
            color: lightcoral;
        }
    </style>
     
</head>
<body>
    <a href="#">a 标签</a>
    <div class="box">div 标签</div>
</body>
</html>
3.3.2 结构伪选择器

作用:根据元素的结构关系查找元素

语法:选择器 { css样式 }

<!DOCTYPE html>
<html lang="en">
​
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>结构伪类选择器</title>
   
    <style>
       /*奇数行设置为蓝色*/
        ul li:nth-child(2N+1){
            color: rgb(27, 42, 216);
        }
        /*偶数行设置为绿色*/
        ul li:nth-child(2N){
            color: rgb(26, 220, 68);
        }
        /*给第一个li设置背景色为红色*/
        ul li:first-child{
            color: red;
        }
        /*给最后一个li设置背景色为红色*/
        ul li:last-child{
            color: red;
        }
    </style>
</head>
​
<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
        <li>10</li>
    </ul>
</body>
​
</html>

 

3.3.3 伪元素选择器(一般处理li标签)

作用:创建虚拟元素(伪元素),用来摆放装饰性的内容

 

注意:必须设置 content: ””属性,用来设置伪元素的内容,如果没有内容,则引号留空即可,伪元素默认是行内显示模式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>伪元素选择器</title>
    <style>
        div::before{
            content: "嘻嘻";
        }
        div::after{
            content: "嘿嘿";
        }
    </style>
​
</head>
<body>
    <div>哈哈</div>
    <div>哈哈</div>
    <div>哈哈</div>
</body>
</html>

 

四、CSS样式

4.1 文字样式

font-size: 20px; /* 设置字号 /

font-family: '楷体'; / 设置字体 /

font-weight: bold; / 设置文字加粗( normal:正常[默认], bold:粗体, 数值 ) /

font-style: italic; / 设置文字倾斜( normal:正常[默认], italic:倾斜 ) /

color:red; / 设置字体颜色 /

line-height: 40px; / 设置行高 /

text-indent: 40px; / 设置段落的首行缩进 /

text-align: center / 设置元素水平位置 /

text-decoration: none; / 设置修饰线(none:无, underline:下划线, overline:上划线, line-through:横穿线 ) */

4.2 背景样式

width: 600px;背景宽度

height: 600px;背景高度

background-color: rgb(168, 244, 218);

background-image: url(../img/cat.jpg);/平铺效果/

background-repeat: no-repeat;/不平铺/

background-repeat: repeat-x;/上面平铺/

background-repeat: repeat-y;/下面平铺/

background-position: 200px 30px;/左边距200px,上边界30px/

4.3 显示模式

块级元素: 独占一行, 可设宽高                        div  p  标题  列表

行内元素: 一行可以显示多个, 无法设置宽高   span  a  b  u  i

行内块元素: 一行可以显示多个,可设宽高        img  input

如何转换: 使用css提供的display属性

        block 块

        inline-block 行内块

        inline 行内

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>显示模式</title>
    <style>
        div{
            width: 50px;
            height: 50px;
            background-color: bisque;
            display: inline-block;
        }
        span{
            width: 200px;
            height: 300px;
            background-color: aquamarine;
            display: block;
        }
        img{
            width: 100px;
        }
    </style>
</head>
<body>
    <!--定义块级元素-->
    <div>123</div>
    <div>123</div>
    <!--定义行内元素-->
    <span>你好</span>
    <span>世界</span><br>
    <!--定义行内块元素-->
    <img src="../img/cat.jpg">
    <img src="../img/cat.jpg">
</body>
</html>   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2048154.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

服务器数据恢复—raid5阵列离线硬盘强制上线失败如何恢复数据?

服务器数据恢复环境&#xff1a; 某品牌2850服务器上有一组由6块SCSI硬盘组建的raid5磁盘阵列&#xff0c;上层操作系统为Redhat linuxext3文件系统。 服务器故障&初检&#xff1a; 服务器在运行过程中突然瘫痪&#xff0c;管理员对服务器中的raid进行检查后发现有两块硬盘…

P3572 [POI2014] PTA-Little Bird

[POI2014] PTA-Little Bird - 洛谷 核心思路 注意力惊人。 注意到&#xff0c;只有两种决策 选高过自己的树中代价最小的 或者 选低于自己的树种代价的最小的1。 取最小值 显然 不等式&#xff1a; 恒成立。 由此&#xff0c;维护一个优先队列即可。 AC 代码 #includ…

宠物空气净化器推荐买吗?清除浮毛的效果好吗

家里养了两只哈基米&#xff0c;它们每天的日常就是早上跑酷、中午跑酷、晚上还在跑酷&#xff0c;有时候看着很好玩&#xff0c;每天都活蹦乱跳的&#xff0c;这在说明它们很健康&#xff0c;我把它们养得很好&#xff0c;所以原谅它们经常跑跑跳跳得行为&#xff0c;虽然会把…

库室联管联控系统DW-S306|是一套智能化系统

装备库室联管联控系统&#xff08;DW-S306&#xff09;是依托互3D技术、RFID技术、数据库技术、AI、视频分析技术对库室装备进行统一管理、分析的信息化、智能化、规范化的系统。 本解决方案利用现有内部网络&#xff0c;部署部队装备库室联管联控系统&#xff0c;形成一套上下…

ai大模型之争-落地场景分析20240817

大模型之争&#xff1a; 目标&#xff1a;吸引客户的注意力&#xff0c;养成客户习惯&#xff0c;占领市场 结语 对于研发人员而言&#xff1a;浏览器插件&#xff0c;开发工具的大模型&#xff1a;通义灵码真是效率倍增的神器 对非研发普通人而言&#xff1a;增加很多便捷工…

DolphinScheduler集群部署问题(趟坑)总结

目录 官方文档 官方项目地址 问题解决 官方文档 DolphinScheduler | 文档中心 (apache.org) 官方项目地址 部署及使用过程中的问题可以参见项目Issue:Issues apache/dolphinscheduler GitHub GitHub - apache/dolphinscheduler at 3.2.2-release 问题解决 1、JVM在运…

ThreejsWebGPU运动残影demo

功能点 实例化SkinnedMesh 修改NodeMaterial着色器 节点材质系统 shader 语言 使用uniform和attribute 中合其他几篇博客中的内容 代码仓库 克隆后需要放到three源码同级别目录下 运行 three源码部分不在git仓库中(太大了) 使用vscode的live-server启动后访问 http://127.0.0.…

HarmonyOS NEXT - Navigation组件封装BaseNavigation

demo 地址: https://github.com/iotjin/JhHarmonyDemo 代码不定时更新&#xff0c;请前往github查看最新代码 在demo中这些组件和工具类都通过module实现了&#xff0c;具体可以参考HarmonyOS NEXT - 通过 module 模块化引用公共组件和utils 官方介绍 组件导航 (Navigation)(推…

​【迅为电子】RK3568驱动指南|第十七篇 串口-第197章 串口通信协议

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

vue3 ts 集成 supermap

文章目录 1. 依赖安装2. 模块声明3. css 全局引入4. 地图加载 1. 依赖安装 npm install supermapgis/iclient-leafletnpm install leaflet2. 模块声明 env.d.ts declare module leaflet {const L: any;export default L; }declare module supermapgis/iclient-leaflet3. css …

高数3.5 极值与最值

1. 极值 1.1. 定义 1.2. 推论 1.3. 求极值的步骤 1.3.1 方法1 1.3.1.1 例题

BCLinux8.*构建部署nmap 7.95

定义SPEC文件 首先从nmap的github上下载SPEC定义文件&#xff0c;然后进行修改&#xff0c;如下&#xff1a; # To build a static RPM, add # --define "static 1" # to the rpmbuild command line. To build without Ncat, add # --define "buildnc…

FastHTML:使用 Python 彻底改变 Web 开发

什么是 FastHTML&#xff1f;&#x1f310; FastHTML 是一个现代 Python Web 应用程序框架&#xff0c;其真正目的是让 Python 开发人员轻松进行 Web 开发。它大大减少了对 JavaScript 和 CSS 构建交互式和可扩展 Web 应用程序的依赖。FastHTML 通过使用 Python 对象来表示 HTM…

centos虚拟机IP地址频繁变化的原因及解决策略

文章目录 centos虚拟机IP地址频繁变化的原因及解决策略虚拟机IP地址变化的原因解决虚拟机IP地址变化的策略1. 使用静态IP地址Windows系统&#xff1a;Linux系统&#xff1a; 2. 配置DHCP保留3. 使用虚拟化平台的网络功能4. 检查和更新网络驱动程序5. 优化网络配置脚本6. 监控和…

BIO,NIO,AIO编程实战

写在前面 关于IO分类以及IO模型等理论知识&#xff0c;可以参考io之io分类和io模型这篇文章。本文主要来实现Java中相关IO模型实现程序。 1&#xff1a;BIO blocking io&#xff0c;是Java io中对阻塞IO模型的具体实现。 因为不管是server端还是client端&#xff0c;都需要…

JavaSE的【反射】和【动态代理】

作为JavaSE的两个个基础知识&#xff0c;【反射】和【动态代理】被广泛运用到spring、spring boot、mybatis......等等各种地方&#xff0c;等到后面的学习中反复提到这个知识点就会开始懵逼&#xff0c;而且这两个知识点其实也是紧密相连的&#xff0c;很多文章和课程里也并没…

零基础STM32单片机编程入门(三十七) MPU6050陀螺仪传感器详解及实战源码

文章目录 一.概要二.MPU6050芯片介绍1.MEMS传感器原理2.MPU6050芯片简介3.芯片引脚定义4.XYZ轴方向5.芯片内部框图6.芯片常用寄存器 三.MPU6050模块原理图及与模块接口定义使用四.STM32单片机驱动MPU6050读取加速度角速度值实验五.CubeMX工程源代码下载六.小结 一.概要 MPU605…

嵌入式面经篇六——寄存器与存储器

文章目录 前言一、寄存器与存储器1、ARM 的 31 个通用寄存器 R0~R15 中&#xff0c;程序计数器 PC 为 R15、程序链接寄存器 LR 为 R14、堆栈指针寄存器 SP 为 R13。2、寄存器掉电会丢失数据吗&#xff1f;3、NOR Flash 与 NAND Flash 的区别&#xff1f;4、SRAM、DRAM、SDRAM的…

使用Python创建省份城市地图选择器

在这篇博客中&#xff0c;我们将探讨如何使用Python创建一个简单而实用的省份城市地图选择器。这个项目不仅能帮助我们学习Python的基础知识&#xff0c;还能让我们了解如何处理JSON数据和集成网页浏览器到桌面应用程序中。 C:\pythoncode\new\geographicgooglemap.py 全部代码…

Camtasia 2024破解版安装教程+汉化补丁激活2024 破解版激活码

最近&#xff0c;我在网上冲浪的时候&#xff0c;发现了一款录屏软件——Camtasia 2024。它不仅功能丰富&#xff0c;而且操作简单&#xff0c;简直是我的录屏利器&#xff01;今天&#xff0c;我就来给大家分享一下这款软件的最新功能&#xff0c;让你们也感受一下它的魔力&am…