[前端面试]HTML AND CSS

HTML

html语义化标签的理解

是什么:
在布局页面的时候,根据内容的结构与含义,选择合适的带语义的html标签
如header,footer,nav,article,main,aside,h标签等

好处

  1. 增强代码可读性,有利于开发者开发与维护
  2. 有利于seo搜索引擎优化
  3. 有利于在网络卡顿时,正常显示页面结构(虽然没有样式),提高用户体验

html5的新特性

添加语义化标签,main,nav,article,header,footer

添加媒体标签,audio,video,source标签

新增一些api,webstorage,拖放api,canvas标签,geolocation api

websockets

行内元素块级元素的区别

行内元素:

一行显示,设置宽高不生效,span,a,img,b,i,

块级元素:

换行显示,设置宽高生效,div,p,h,ul,li

转换:

display:block

display:inlineblock

CSS

css选择器有哪些,权重

id选择器
类选择器|属性选择器|伪类选择器:hover
标签选择器|伪元素选择器::before
通配符选择器

css优先级

  1. !import
  2. 行内样式 > 嵌入式与外联
  3. 选择器优先级
  4. 继承样式

CSS3新增特性

盒子模型

flex和grid布局

css变量

伪类与伪元素

动画

变形与过渡

盒子模型的理解

what
在布局网页的时候,可以把一个个元素看作一个盒子
具有margin,border,padding,content属性
分为两种盒子:
1)标准盒子模型(默认情况)
2)怪异盒子模型
设置宽高,默认设置的是内容的宽高
而怪异盒子情况下,设置的是除margin之外所有属性的总和
how

box-sizing:border-box;//转化为怪异盒子模型

position定位方式

1)绝对定位

定位标准:最近已定位的祖先元素,没有相对窗口定位

在文档流中不占据位置

2)相对定位:

定位标准:相对自己原位置

在文档流中占据空间

3)固定定位:

定位标准:页面窗口(视口定位)

页面滚动不改变位置

4)默认定位:static

元素按照正常文档流排列,不会受到top,bottom,left,right的影响

dispay:none与visiblity:hiden的区别

改变元素的显示与隐藏状态

1)将元素从文档树中移除

浏览器不会在为这个元素进行绘制与事件处理,适合频繁添加与移除元素的场景

会触发回流,对页面布局有显著影响

2)改变元素的显示状态,未移除元素,仍占据原来的空间

浏览器仍要保留这个元素的布局消息,占据更多的内存与资源

触发重绘

对flex布局的理解

容器

1)父容器

display:flex

justify-content 子容器按主轴方向排列 flex-start/end,center,space-around/between

align-items 子容器按交叉轴排列 flex-satrt/end,center,baseline(首行文字),stretch

flex-wrap 自动换行

2)子容器

flex 在主轴上伸缩

(flex是多个属性的缩写,允许1-3个值连用,)

align-self 在交叉轴上的排列,取值和上面一样

1)主轴

2)交叉轴

flex-direction:row/column

对BFC的理解

what
块级格式化上下文
一个独立的渲染区域,使其内部的布局不受外部元素的影响
why
主要用于清除浮动影响,与避免外边距合并等问题
how
创建bfc:

  1. float left/right
  2. position absolute/fixed
  3. display inline-block/table-cell
  4. overflow:hidden/auto/scroll

实现移动端响应式布局的方式

响应式:在不同屏幕的设备上,动态调整页面布局与样式

1)采用flex布局,避免使用固定宽度,采用百分比

使用vw,vh,rem,em单位定义尺寸

2)使用媒体查询,针对不同屏幕尺寸编写样式

图片适配:使用百分比宽度,srcset属性

3)使用第三方组件库

css尺寸单位

  • px 绝对长度,由屏幕分辨率决定
  • em 相对长度,相对自身font大小,自身fontsize未设置继承父元素
  • rem 相对长度,相对页面根元素大小
  • vw/vh 相对长度,相对视窗的宽/高 1/100

居中的实现方式

  1. 利用flex布局
    display:flex
    justify-Content:center
    align-Items:center

  2. 利用定位:
    position:absolute
    left:50%;
    top:50%;
    transform: translate(-50%, -50%);

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

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

相关文章

前端(4)——demo分享

这两天需要用HTML、CSS和js简单组合一个html网页用于展示一些数据内容,这是我简单组合别人的一些文件形成的简单demo,大家也可以拿过去使用。 登录界面: 场景选择界面,有五个场景,每个场景中都需要展示一些特定的数据…

【企业级分布式系统】 Kafka集群

文章目录 KafkaKafka 概述使用消息队列的好处 Kafka 的特性Kafka 系统架构Kafka 的应用场景Kafka 的优缺点 Kafka 集群部署下载安装包安装 KafkaKafka 命令行操作Kafka 架构深入 FilebeatKafkaELK 部署指南~部署 ZookeeperKafka 集群部署 Filebeat部署 ELK(Logstash…

高级java每日一道面试题-2024年11月07日-Redis篇-Redis有哪些功能?

如果有遗漏,评论区告诉我进行补充 面试官: Redis有哪些功能? 我回答: Redis 是一个开源的、基于键值对的 NoSQL 数据库,以其高性能、丰富的数据结构和多种功能而闻名。在高级 Java 面试中,了解 Redis 的核心功能和高级特性是非常重要的。以下是 Redi…

14天Java基础学习——第9天:异常处理机制

第9天 Java基础学习:异常处理机制 学习目标 在本日的学习中,我们将深入研究Java中的异常处理机制,包括以下几个方面: 异常与错误分类try-catch-finally语句throw与throws关键字自定义异常 一、异常与错误分类 Java中的异常主…

Java-空链处理

什么是 null 在 Java 中,null 是一个非常常见的关键字,用于表示“没有值”或“空”。然而,对于初学者来说,null 的本质可能会感到有些困惑。在本文中,我们将详细探讨 null 在 Java 中的含义和使用。 在 Java 中&…

PyTorch使用教程-深度学习框架

PyTorch使用教程-深度学习框架 1. PyTorch简介 1.1-什么是PyTorch ​ PyTorch是一个广泛使用的开源机器学习框架,特别适合深度学习的应用。它以其动态计算图而闻名,允许在运行时修改模型,使得实验和调试更加灵活。PyTorch提供了强大的GPU加…

网络爬虫 Python 第二课

BeautifulSoup 高级用法: 标签查找与筛选:除了简单地通过标签名查找(如 soup.find(div) 查找第一个 div 标签),还可以利用属性来更精准地查找。例如,如果要查找所有 class 属性为 article 的 div 标签&…

供应链管理、一件代发系统功能及源码分享 PHP+Mysql

随着电商行业的不断发展,传统的库存管理模式已经逐渐无法满足市场需求。越来越多的企业选择“一件代发”模式,即商家不需要自己储备商品库存,而是将订单直接转给供应商,由供应商直接进行发货。这种方式极大地降低了企业的运营成本…

Pr:音频过渡

Adobe Premiere Pro 自带一组共三个音频过渡 Audio Transitions效果。 对音频剪辑之间应用交叉淡化 Crossfade过渡,操作方式类似于应用视频过渡效果。 对于交叉淡化,要保证前剪辑的出点之后及后剪辑的入点之前有足够的预留内容(也称“手柄”&…

前端页面开发步骤详解

目录 前言1. 页面搭建1.1 HTML 标签结构1.2 CSS 样式设计 2. 数据绑定与事件处理2.1 数据绑定2.2 表单校验 3. 调用后台接口3.1 接口文档与工具封装3.2 参数传递与接口调用 结语 前言 在前端开发过程中,从页面搭建到与后台接口对接是一个必不可少的完整流程。无论是…

A037-基于Spring Boot的二手物品交易的设计与实现

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…

两行命令搭建深度学习环境(Docker/torch2.5.1+cu118/命令行美化+插件),含完整的 Docker 安装步骤

深度学习环境的配置过于繁琐,所以我制作了两个基础的镜像,希望可以帮助大家节省时间,你可以选择其中一种进行安装,版本说明: base 版本基于 pytorch/pytorch:2.5.1-cuda11.8-cudnn9-devel,默认 python 版本…

EXCEL延迟退休公式

如图: A B为手工输入 C2EOMONTH(A2,B2*12) D2EOMONTH(C2,IF(C2>DATEVALUE("2025-1-1"),INT((DATEDIF(DATEVALUE("2025-1-1"),C2,"m")4)/4),0)) E2EOMONTH(A2,B2*12IF(EOMONTH(A2,B2*12)>DATEVALUE("2025-1-1"),INT(…

区块链技术在数据安全中的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 区块链技术在数据安全中的应用 区块链技术在数据安全中的应用 区块链技术在数据安全中的应用 引言 区块链技术基础 1.1 区块链的…

GIT 入门详解指南

前言: 注:本博客仅用于记录本人学习过程中对git的理解,仅供学习参考,如有异议请自行查资料求证 安装 使用git之前必须完成git的安装,Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行 git 安装教程 基本…

讯飞、阿里云、腾讯云:Android 语音合成服务对比选择

在 移动端 接入语音合成方面,讯飞和腾讯云等都是优秀的选择,但各有其特点和优势。咱们的需求是需要支持普通话/英语/法语三种语言,以下是对各个平台的详细比较: 一、讯飞语音合成介绍 与语音听写相反,语音合成是将一段…

蓝牙 AVRCP 协议详解及 Android 实现

文章目录 前言一、什么是蓝牙 AVRCP 协议?1.1 定义与功能1.2 AVRCP 的设备角色1.3 AVRCP 的版本发展 二、AVRCP 的工作原理2.1 配对与连接2.2 命令与响应2.3 元数据传输 三、AVRCP 在 Android 中的典型应用场景3.1 音乐控制3.2 车载媒体交互3.3 蓝牙遥控器 四、Andr…

HarmonyOS本地存储-Preferences(用户首选项)的使用

一,用户首选项简述 ohos.data.preferences (用户首选项) 用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。 数据存储形式为键值对,键的类型为字符串型,值的存储数据…

【机器学习】回归模型(线性回归+逻辑回归)原理详解

线性回归 Linear Regression 1 概述 线性回归类似高中的线性规划题目。线性回归要做的是就是找到一个数学公式能相对较完美地把所有自变量组合(加减乘除)起来,得到的结果和目标接近。 线性回归分为一元线性回归和多元线性回归。 2 一元线…

纯前端实现语音文字互转

在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环。Web Speech API 的引入使得开发者能够在浏览器中轻松实现语音识别和语音合成功能,为用户带来更加直观和便捷的操作体验。本文将介绍 Web Speech API 的基本概念、功能特性以及如何利用它来构建创新的应用程序…