字节跳动青训营--前端day2

news2024/12/24 20:51:11

文章目录

  • 前言
  • 一、css
    • 1. css的组成
    • 2. css三种使用方式
    • 3.css的工作方式
  • 二、 css选择器Selector
    • 1. 选择元素的方式
    • 2. 伪类(pseudo-classes)
      • 2.1 状态伪类
      • 2.1 结构伪类
    • 3.通过组合选择元素
      • 3.1 直接组合
      • 3.2 元素组合的拓展
    • 4. 选择器的特异度(Specificity)
    • 5. 样式覆盖
    • 6. 样式继承
      • 6.1 显式继承:
      • 6.2 初始值
    • 7. css求值过程
  • 三、颜色
    • 1. RGB
    • 2. HSL
    • 3. 透明度
  • 四、布局(Layout)
    • 1.布局相关技术
    • 2.常规盒模型
      • 2.1 width
      • 2.2 heigth
      • 2.3 padding
      • 2.4 boeder
      • 2.5 margin


前言

仅以此文章记录学习历程


一、css

Cascading Style Sheets(用来定义页面元素的样式)

  • 设置字体和颜色
  • 设置位置和大小
  • 添加动画效果

1. css的组成

在这里插入图片描述

2. css三种使用方式

通常建议时用外链和嵌入式(主要是样式分离)
在这里插入图片描述

3.css的工作方式

在这里插入图片描述

二、 css选择器Selector

作用:找出页面中的元素,以便给他们设置样式

1. 选择元素的方式

  • 按照标签名(h1,div,p…)、类名class(.)或者id(#)
  • 按照属性
  • 按照DOM树中的位置

在这里插入图片描述
利用通配符匹配选择
在这里插入图片描述

2. 伪类(pseudo-classes)

定义:伪类是添加到选择器的关键字,用于指定所选元素的特殊状态

两种伪类类型:

  • 状态伪类
  • 结构性伪类

2.1 状态伪类

<style>
/*默认状态*/
a:link{
    color:black;
}
/*点击后状态*/
a:visited {
    color:gray;
}
/*鼠标悬浮状态*/
a:hover{
    color: red;
}
/*输入框边框高亮样式*/
:focus{
    outline: 2px solid orange;
}
</style>
<body>
<a href="http://baidu.com">百度</a>
<label>
  <input type="text">
</label>

2.1 结构伪类

<style>
/*默认状态*/
li{
    list-style-position: inside;
    border-bottom: 1px solid;
    padding: .5em;
}
/*选中第一个*/
li:first-child{
    color: #ff99cc;
}
/*选中最后一个*/
li:last-child{
    border-bottom: none;
}
</style>
<body>
<ol>
  <li>泰坦尼克号</li>
  <li>星球大战</li>
  <li>阿凡达</li>
  <li>复仇者联盟</li>
  <li>速度与激情8</li>
</ol>
</body>

在这里插入图片描述

3.通过组合选择元素

3.1 直接组合

<style>
/*默认状态*/
.error {
    color: red;
}
/*通过类名和标签组合*/
input.error {
    border-color: red;
}
</style>
<body>
<label>
  用户名
  <input class="error" value="aa">
</label>
<span class="error">
  最少3个字符
</span>
</body>

在这里插入图片描述

3.2 元素组合的拓展

在这里插入图片描述

4. 选择器的特异度(Specificity)

在这里插入图片描述

5. 样式覆盖

在这里插入图片描述

6. 样式继承

不可继承属性:width,hiegth等
可继承属性:color,font-size等

在这里插入图片描述

6.1 显式继承:

通过通配符 * 和 inherit 关键字使不可继承元素能够继承

inherit的定义和用法:

  • inherit 关键字指定一个属性应从父元素继承它的值
  • inherit 关键字可用于任何 HTML 元素上的任何 CSS 属性

在这里插入图片描述

6.2 初始值

CSS中,每个属性都有一个初始值

  • background-color 的初始值为 transparent
  • margin-left 的初始值为 0

可以使用initial 关键字显式重置为初始值

  • background-color: initial

7. css求值过程

在这里插入图片描述

三、颜色

1. RGB

初始值都为0,最大值则为255
即:rgb(000,000,000)–> rgb(255,255,255)

在这里插入图片描述

2. HSL

场景:当需要把一个颜色变亮或者变暗时,可以通过调整Lightness实现
在这里插入图片描述
在这里插入图片描述

3. 透明度

在这里插入图片描述

四、布局(Layout)

作用:确定内容的大小和位置的算法

依据元素、容器、兄弟节点和内容等信息来计算

1.布局相关技术

常规流也称为文档流
在这里插入图片描述

2.常规盒模型

在这里插入图片描述

2.1 width

  • 指定 content box 宽度
  • 取值为长度、百分数、auto
  • auto 由浏览器根据其它属性确定
  • 百分数相对于容器的 content box 宽度

2.2 heigth

  • 指定 content box 宽度
  • 取值为长度百分数auto
  • auto 取值由内容计算得来
  • 百分数相对于容器的 content box 高度
  • 容器有指定的高度时,百分数才生效

2.3 padding

  • 指定元素四个方向的内边距
  • 百分数相对于容器宽度

padding定义的几种方式

  1. padding:10px(四个边内边距均为10px)
  2. padding:10px 20px(上下内边距为10px,左右内边距为20px)
  3. padding:10px 20px 30px 40px(内边距分别为上10px 右20px 下30px 左40px

2.4 boeder

在这里插入图片描述

2.5 margin

  • 指定元素四个方向的外边距
  • 取值可以是长度百分数auto
  • 百分数相对于容器宽度

边距塌陷:
当有两个盒子存在,并且都有边距时,会取两者中最大的一个而不是相加,如:
a下边距为100px,b上边距为120px 他两者的间距为120px

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

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

相关文章

小型水库雨水情测报和安全监测解决方案

平升电子小型水库雨水情测报和安全监测解决方案辅助水利管理部门实现水库雨水情信息“全要素、全量程、全覆盖”自动测报。系统具备水库水位、雨量、现场图像/视频等水文信息采集、传输、处理及预警广播等功能&#xff0c;有效提升了雨水情信息的时效性和准确度&#xff0c;为保…

jmeter 使用beanshell 编写脚本

一、介绍 1.1 介绍 BeanShell是一个小型的、免费的、可嵌入使用Java编写的具有对象脚本语言特性的Java源码解释器。 动态执行所有Java语句、Java代码片段以及弱类型Java和附加的脚本的便利 透明地访问所有Java对象和API 四种运行模式&#xff1a;命令行、控制台、Applet、远…

数据结构专题 -- 哈希思想详解

代码会存放在&#xff1a; https://github.com/sjmshsh/Data-Struct-HandWriting 通过阅读本篇文章&#xff0c;你可以学到&#xff1a; 哈希思想及其本质使用C实现简易的哈希表哈希思想的应用 位图布隆过滤器哈希切分极致升华&#xff0c;海量数据处理面试题 拓展 – 一致性…

二叉树的应用——哈夫曼树

哈夫曼树与哈夫曼编码 1.树的带权路径长 百分制成绩转五级制的算法流程图&#xff08;A/B/C/D/E的人数分别为6/18/21/36/19&#xff09;带权路径长 路经长 x 权重 树的带权路经长&#xff1a;所有叶结点的带权路径长度之和。 例如&#xff1a; &#xff08;a&#xff09;图…

[ 攻防演练演示篇 ] 利用谷歌 0day 漏洞上线靶机

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…

橘子学kafka之基础命令使用

本系列主要开始处理关于kafka的一些技术知识点&#xff0c;尽量会以代码和实际命令为主要表达形式来做表现。 本文主要是关于如何在客户端使用命令做一个描述&#xff0c;其实我本来不想写的&#xff0c;但是今天在公司有同事居然不会&#xff0c;所以我觉得还是描述一下。而且…

贪心算法合集

95 分糖果问题 思路非常简单&#xff0c;和题解一模一样&#xff1a; 用数组存每个人对应的糖果数量&#xff0c;初始为1 从左到右遍历&#xff0c;如果比左边的大&#xff0c;1再从右到左遍历&#xff0c;如果比右边的大&#xff0c;1 import java.util.*;public class Solu…

录屏大师电脑版推荐(一键录制声画同步的视频)

很多小伙伴使用电脑多年&#xff0c;却不知道电脑有录屏功能。想要对电脑屏幕进行录制&#xff0c;只需在电脑上安装一个录屏大师。那有没有录屏大师电脑版推荐呢&#xff1f;在试用了多款电脑录屏大师之后&#xff0c;小编今天给大家推荐一款可以一键录制声画同步视频的录屏大…

使用Python为二年级的学生批量生成数学题

文章目录一.使用Python为二年级的学生批量生成数学题1.1 背景二.解决思路及其代码三.排版及其打印四.本文源码一.使用Python为二年级的学生批量生成数学题 1.1 背景 我妹妹今年上二年级&#xff0c;她的老师今天给他们布置了一项作业&#xff1a; 从今天起到开学&#xff0c;…

ENSP的AR40问题解决

AR40以及其他相关问题都可以参考此方法&#xff0c;都已经可以正常使用 现在有enspAR40问题的同学有救了&#xff0c;ensp的AR40问题困扰了我很长时间&#xff0c;根据官方的问题解决文档没有解决&#xff0c;反正就是之前的所有方法都没有用&#xff0c;也不是都没有用&#x…

初读《编程之美》就想秀一下,结果还翻车了

文章目录 一、前言 二、我的思路 三、Code 四、翻车现场 五、后续问题 一、前言 ———如何写一个短小的程序&#xff0c;让 Windows 的任务管理器显示CPU的占用率为50%? 这道有趣的面试题我是这两天从《编程之美》电子版中看到的&#xff0c;看意思就是邹老师在微软对一…

入门postgre sql(PG的下载和安装,包括普通用户源码构建的安装方式)

目录PG的下载安装1、Windows 上安装2、Linux上安装有root权限的安装无root权限的安装PG的下载安装 点击这里&#xff0c;了解pg 1、Windows 上安装 (1)下载安装 访问官网下载地址 https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 下载最新发布的Po…

3.kafka-3.生产者,消费者

文章目录1.个性化配置&#xff0c;增加吞吐量2.发送事务消息3.消费组手动提交offset指定offset位置进行消费指定时间消费当新增消费者&#xff0c;或者消费组时&#xff0c;如何消费漏消息和重复消息如何解决消费解压问题1.个性化配置&#xff0c;增加吞吐量 private static vo…

使用 .NET 7、Blazor 和 .NET MAUI 构建你自己的 Podcast App

.NET Podcast App 首次在 .NET Conf 2021上推出&#xff0c;最近进行了更新以在 .NET Conf 2022 keynote 中突出显示 .NET 7 中的新功能。该 Podcast App 已准备好使用展示 .NET&#xff0c;ASP.NET Core&#xff0c;Blazor&#xff0c;.NET MAUI&#xff0c;Azure Container A…

Android 蓝牙开发——概述(一)

一、蓝牙简介 蓝牙技术是一种无线数据和语音通信开放的全球规范&#xff0c;它是基于低成本的近距离无线连接&#xff0c;为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。 其中将1.x~3.0之间的版本称之为经典蓝牙&#xff0c;4.x开始的蓝牙称之为低功耗蓝牙&…

Memcache学习总结

这里写自定义目录标题介绍一致性哈希寻找节点一致性哈希介绍内存管理slab结构寻找存储chunkChunk中存储的Item数据结构grow factor 调优回收删除一些特性介绍 基于内置内存Key-Value形式存储数据(字符串、对象)集群服务器是通过数组链表方式存储K-V数据<分布式>基于哈希…

编程语言那么多,我为什么推荐你学Java?

Java一直都是稳居排行榜第一的语言&#xff0c;在未来10年Java都会是最热门的语言之一&#xff0c;因为Java技术具有卓越的通用性、高效性、安全性和平台移植性&#xff0c;它可以跨平台的应用到不同的领域&#xff0c;工作需求足够大。 为什么选择学习Java编程语言&#xff1…

更具科技感的中塔机箱,模块设计兼容性强,鑫谷昆仑御风机箱上手

大家装机的时候应该都接触过鑫谷的机箱和散热器外设&#xff0c;作为一家有年头的外设品牌&#xff0c;这两年鑫谷推陈出新&#xff0c;像是在电源方面&#xff0c;就有不少很受欢迎的产品&#xff0c;像是昆仑系列等&#xff0c;前端鑫谷在昆仑系列中带来了一款设计新颖的机箱…

琥珀酰亚胺-双硫键-琥珀酰亚胺NHS-SS-NHS双端活性酯二硫键交联剂

名称:NHS-SS-NHS 中文名称:活性酯-双硫键-活性酯 琥珀酰亚胺-双硫键-琥珀酰亚胺 分子式 :C14H16N2O10S2 分子量 :436.41 存储条件&#xff1a;-20C&#xff0c;避光&#xff0c;避湿 用 途&#xff1a;仅供科研实验使用&#xff0c;不用于诊治 外观: 固体或粘性液体&am…

VMwareWorkstationPro16的下载与安装,以及vm账号注册的问题

VMwareWorkstationPro16的下载与安装&#xff0c;以及vm账号注册的问题查看虚拟化支持是否开启vm的安装vm账号注册的常见问题VM 16的安装步骤查看虚拟化支持是否开启 可以从任务管理器中的性能去查看CPU是否开启虚拟化支持 vm的安装 访问 vm 的官网: https://www.vmware.co…