前端面试题23(css3)

news2024/9/22 3:52:56

在这里插入图片描述
关于CSS3的面试题,我们可以从多个维度来探讨,包括但不限于选择器、盒模型、布局技术、动画与过渡、响应式设计等。下面我会列举一些典型的CSS3面试问题,并尽可能提供详细的解答或示例代码。

1. CSS3中新增了哪些选择器?

答案: CSS3引入了许多新的选择器,提高了对页面元素的定位能力,例如:

  • 属性选择器:[attribute=value],如input[type="text"]
  • 伪类选择器::nth-child(n):not(selector):hover
  • 伪元素选择器::before, :after, ::first-letter, ::first-line
  • 结构伪类选择器::empty, :root, :target, :checked

2. 请解释CSS3中的Flexbox(弹性盒子)布局,并给出一个简单的示例。

答案: Flexbox是一种一维的布局模式,可以很容易地在容器内对齐和分布项目,无论是垂直还是水平方向。它通过display: flex;应用于容器,并使用属性如justify-content, align-items, flex-direction等控制子项的布局。

示例代码:

.container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 400px;
}

.item {
  background-color: #f00;
  padding: 20px;
  margin: 10px;
}
<div class="container">
  <div class="item">Item 1</div>
  <div class="item">Item 2</div>
  <div class="item">Item 3</div>
</div>

3. 说明CSS3中的Transition和Animation的区别。

答案:

  • Transition(过渡) 是一种简单的效果,用于在状态改变时平滑地改变元素的属性值,如颜色、大小等。它需要触发事件(如:hover)来启动,并且是一次性的。

    示例代码:

    .box {
      width: 100px;
      height: 100px;
      background-color: blue;
      transition: background-color 2s;
    }
    .box:hover {
      background-color: red;
    }
    
  • Animation(动画) 则更为复杂和强大,允许定义一系列关键帧来实现复杂的动画效果,可以自动循环播放,不需要用户的交互触发。

    示例代码:

    @keyframes fadeIn {
      0% {opacity: 0;}
      100% {opacity: 1;}
    }
    
    .animated-box {
      width: 100px;
      height: 100px;
      background-color: green;
      animation: fadeIn 3s infinite;
    }
    

4. 如何使用CSS3实现媒体查询,以支持响应式设计?

答案: 媒体查询允许你根据设备视口尺寸、屏幕分辨率等条件应用不同的CSS样式。这是实现响应式设计的关键技术。

示例代码:

/* 默认样式 */
body {
  font-size: 16px;
}

/* 当屏幕宽度至少为768px时 */
@media (min-width: 768px) {
  body {
    font-size: 18px;
  }
}

/* 当屏幕宽度至少为1024px时 */
@media (min-width: 1024px) {
  body {
    font-size: 20px;
  }
}

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

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

相关文章

【Java安装】windows10+JDK21+IDEA

文章目录 一、JDK安装1. 下载完成后按照自己需要的位置安装2. 配置环境变量2.1 JAVA_HOME变量2.2 PATH配置 3. 验证4. helloworld 二、IDEA安装三、IDEA-HelloWorld 一、JDK安装 JDK安装链接 1. 下载完成后按照自己需要的位置安装 2. 配置环境变量 2.1 JAVA_HOME变量 安装…

手机飞行模式是什么意思?3个方法教你如何开启

在现代生活中&#xff0c;手机已经成为我们日常生活中不可或缺的一部分。然而&#xff0c;有时我们需要暂时切断手机的通信功能&#xff0c;比如在飞机上、开会时或需要安静休息的时候。这时候&#xff0c;苹果手机上的“飞行模式”功能就派上了用场。 那么&#xff0c;手机飞…

【从零到一,如何搭建本地AI大模型】

摘要: 本文主要记录这一段时间对本地大模型搭建的心得。 作为一个资深程序员,在AI席卷全球的时候,深深感觉到了一丝危机感,不禁有一个想法不断在脑海闪现:我会不会真的哪一天被AI给取代了? 从哪入手 程序员出生的我,掌握了很多语言,从前端到数据库,再到运维,基本都…

uniapp-小程序获取用户位置

1. 需要在微信公众平台进行接口的申请。选择自己需要用的接口。 2. 在app.json文件中配置permission和requiredPrivateInfos。requiredPrivateInfos里面是你需要使用的接口。 3. 配置完成后&#xff0c;就可以使用了。 相关获取位置API的链接 4. 如果要获取当前位置到某一个指…

VS 附加进程调试

背景&#xff1a; 此方式适合VS、代码和待调试的exe在同一台机器上。 一、还原代码到和正在跑的exe同版本 此操作可以保证能够调试生产环境的exe 二、设置符号路径 1.调试->选项 三、附加进程 方式1&#xff1a; 打开VS&#xff0c;调试->附加到进程&#xff0c;出…

【MySQL】MySQL连接池原理与简易网站数据流动是如何进行

MySQL连接池原理与简易网站数据流动是如何进行 1.MySQL连接池原理2.简易网站数据流动是如何进行 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f60…

【Go】常见的变量与常量

变量 常见的变量声明方式 一、声明单个变量的多种方式 1.声明一个变量初始化一个值 //声明变量 默认值是0&#xff0c;var a int//初始化一个值a 1fmt.Println(a) 2. 在初始化的时候省去数据类型&#xff0c;通过值自动匹配当前的变量的数据类型 var b 2fmt.Println(&quo…

7月6日 VueConf 技术大会即将在深圳举办

7月6日&#xff0c;VueConf 2024 即将在深圳召开&#xff0c;本次大会正值 Vue.js 十周年&#xff0c;旨在聚焦 Vue.js 社区的成员&#xff0c;分享最新的技术动态、经验以及创新实践。 本次参与 VueConf 大会的是来自全球 Vue.js 核心团队成员、行业专家及前端开发者。其中&a…

Java语言程序设计——篇二(1)

Java语言基础 数据类型关键字与标识符关键字标识符 常量与变量1、常量2、变量 类型转换自动类型转换强制类型转换 数据类型 数据的基本要素数据的性质&#xff08;数据结构&#xff09;数据的取值范围&#xff08;字节大小&#xff09;数据的存储方式参与的运算 Java是一门强类…

NodeJS蔬菜自产零售混合销售平台-计算机毕业设计源码10149

摘 要 随着移动互联网的快速发展&#xff0c;购物方式也发生了巨大的变化。蔬菜作为消费者生活中必不可少的商品之一&#xff0c;在移动互联网时代也迎来了新的购物方式——购物小程序。购物小程序是一种基于手机应用平台的轻量级应用程序&#xff0c;用户可以通过它方便地浏览…

C++第二弹 -- C++基础语法下(引用 内联函数 auto关键字 范围for 指针空值)

本篇大纲 前言一. 引用续讲1. 传值,传引用效率对比2. 类型转换和表达式传引用的注意事项3. 引用与指针 二. 内联函数1. 概念2. 特性3. 面试题 三. auto关键字(C11)1. 类型别名思考2. auto简介3. auto的使用细则4. auto不能推导的场景 四. 基于范围的for循环(C11)1. 范围for的语…

3DMAX软件如何导出和导入模型

在3DMAX软件中导出和导入模型的过程相对直观&#xff0c;以下是具体的步骤&#xff1a;导出模型&#xff1a;1、选择模型&#xff1a;首先&#xff0c;在3DMAX的视图中选择你想要导出的模型。2、导出设置&#xff1a;点击菜单栏中的“文件”&#xff08;File&#xff09;&#…

现货黄金技术出现这一信号赶紧止损!

很多现货黄金投资者都并不知道&#xff0c;移动平均线除了可以用于寻找进场的机会&#xff0c;还可以用来设置止损&#xff0c;让自己在交易中更好地进行防守。其实移动平均线止损&#xff0c;是常用的技术止损方法之一&#xff0c;本文将和大家分享怎样利用均线设置止损点&…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【加密导入密钥(C/C++)】

加密导入密钥(C/C) 以加密导入ECDH密钥对为例&#xff0c;涉及业务侧加密密钥的[密钥生成]、[协商]等操作不在本示例中体现。 具体的场景介绍及支持的算法规格。 在CMake脚本中链接相关动态库 target_link_libraries(entry PUBLIC libhuks_ndk.z.so)开发步骤 设备A&#xf…

【日记】我就是世界上最幸福的人!(1124 字)

正文 今天想写的内容有点多&#xff0c;就不写在纸上了。 首先&#xff0c;最高兴的&#xff0c;还是我们的《艾尔登法环》有了进展。我和兄长终于通过了 “火山官邸&#xff1a;地底拷问所”。我真是不知道&#xff0c;我和他在这个地方被那两个掳人少女人拷问了多少次了。不仅…

笔记本电脑投屏怎么操作?一看就会!

日常工作或办公都会用到笔记本电脑&#xff0c;但很多新手用户不知道笔记本电脑的投屏要怎么操作&#xff1f;接下来系统之家给大家介绍三种简单的操作方法&#xff0c;帮助大家轻松完成笔记本电脑投屏投屏操作&#xff0c;从而满足自己的办公或学习使用需求。 方法一 1. 直接W…

QDockWidget类详解

一.QDockWidget类概述 1.QDockWidget类 QDockWidget类提供了一个特殊的窗口部件&#xff0c;它可以是被锁在QMainWindow窗口内部或者是作为顶级窗口悬浮在桌面上。 QDockWidget类提供了dock widget的概念&#xff0c;dock widget也就是我们熟悉的工具面板或者是工具窗口。Do…

anaconda powershell prompt中的指令

1.查看安装目录 pip list 或者 conda list 2.查看虚拟环境 conda env list 3.进入虚拟环境 conda activate 环境名称 例如&#xff1a;conda activate pytorch_learn 4.安装虚拟环境 conda create -n “” python 5.在虚拟环境中安装某模块/包 先进入虚拟环境 再 conda install…

命令模式(大话设计模式)C/C++版本

命令模式 C #include <iostream> using namespace std;// Receiver类 知道如何实施与执行一个与请求相关的操作&#xff0c;任何类都可能作为一个接收者 class Receiver { public:void action(){cout << "请求执行!" << endl;} };// Command类&am…

IOC、DI<4> Unity

IOC&#xff08;&#xff09;&#xff1a;控制反转&#xff0c;把程序上层对下层的依赖&#xff0c;转移到第三方的容器来装配 是程序设计的目标&#xff0c;实现方式包含了依赖注入和依赖查找&#xff08;.net里面只有依赖注入&#xff09; DI&#xff1a;依赖注入&#xff0c…