006-CSS-常见问题汇总

常见问题汇总

  • 1、伪元素与伪类
  • 2、偏门但好用的样式
  • 3、文字溢出三个点展示
  • 4、空白折叠问题
  • 5、文字的垂直居中
  • 6、 Vue项目中 在父组件中修改子组件样式
  • 7、BFC 概念
    • 7.1、兄弟元素外边距合并
    • 7.2、父子元素外边距塌陷
  • 8、box-sizing
    • 8.1、box-sizing: border-box
    • 8.2、box-sizing: content-box
    • 8.3、box-sizing 的兼容写法
  • 9、flex 布局
  • 10、css3 -- transform
  • 11、css3 -- transition

1、伪元素与伪类

伪元素:::before、::after 可以实现无交互的小图标等
伪类::hover、:link 设置元素的hover效果等

2、偏门但好用的样式

样式说明
object-fit: cover;设置image图片裁剪方式,类似 background-szie: cover;
user-select: none;禁止用户选中
filter: grayscale(100%);元素滤镜置灰操作
word-break: break-all;强制文字换行
table-layout: fixed;表格固定列宽,封装表格组件,拖拽表头使用

3、文字溢出三个点展示

overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;

4、空白折叠问题

💡 Tips:ul > li 元素布局时,li 元素行内块,设置 li 25% 宽度,但 4 个 li 放不下问题;img 元素在 div 盒子底部有 3px 左右空白问题

对父元素设置 font-size: 0; 会去掉空白折叠,或者子元素编写时不换行。

5、文字的垂直居中

<div class="parent"><span class="text">hello everyone</span></div>.parent {display: flex;justify-content: center;align-items: center;border: 1px solid #ccc;height: 50px;width: 500px;
}
.text {border: 1px solid #f00;
}

效果图如下:
在这里插入图片描述

6、 Vue项目中 在父组件中修改子组件样式

💡 Tips:/deep/、::deep

::v-deep .el-input__inner {/* 父页面用了 el-select 组件,修改 下拉框样式 */
}
/deep/ .el-input__inner {/* 父页面用了 el-select 组件,修改 下拉框样式 */
}

7、BFC 概念

💡 Tips:BFC 是指浏览器中创建了一个独立的渲染区域,并且拥有一套渲染规则,他决定了其子元素如何定位,以及与其他元素的相互关系和作用;
BFC产生:浮动、定位、display:inline-block;、flex、overflow:hidden;
应用:外边距合并问题、子元素浮动,父盒子高度塌陷问题、清除浮动、两栏布局;

7.1、兄弟元素外边距合并

在这里插入图片描述解决方案:尽量只给一个元素设置 margin。

7.2、父子元素外边距塌陷

在这里插入图片描述

解决方案:给父元素设置 margin 保证外边距,给父元素设置 padding 保证内边距。

8、box-sizing

box-sizing 用于在合适的地方设置盒模型的宽高。

8.1、box-sizing: border-box

属性设置之后,设置宽高为整个盒子的最终宽高,实际内容区域宽高受padding、border的影响。

 box-sizing: border-box;width: 300px;height: 300px;padding: 20px;border: 1px solid #ccc;

在这里插入图片描述

8.2、box-sizing: content-box

box-sizing:content-box 为默认写法,设置宽高为盒模型内容宽高,padding、border都会改变盒子的最终宽高。

 box-sizing: content-box;width: 300px;height: 300px;padding: 20px;border: 1px solid #ccc;

在这里插入图片描述

8.3、box-sizing 的兼容写法

-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;

9、flex 布局

  1. 父盒子定义:
    	display: flex;flex-direction: row;width: 1000px;
    
    左侧子盒子给固定宽度,右侧子盒子给 flex: 1;即可实现经典左右布局,右侧子盒子宽度自适应:
    	.flex-left-box {width: 400px;}.flex-right-box {flex: 1;}
    
    上下布局同理。
  2. 实现行内块级元素左右布局:
    父盒子定义:
    	display: flex;justify-content: space-between;
    
    给两个子盒子行内元素即可实现两个子盒子左右分布。
  3. flex兼容性写法
    	display: -webkit-flex; /* Safari */display: flex;
    

10、css3 – transform

	.transform {-webkit-transform: translate(-50%, -50%);-moz-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);-o-transform: translate(-50%, -50%);transform: translate(-50%, -50%);}

11、css3 – transition

	.transition {-webkit-transition: all 0.5s;-moz-transition: all 0.5s;-ms-transition: all 0.5s;-o-transition: all 0.5s;transition: all 0.5s;}

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

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

相关文章

机器人顶刊IJRR近期国人新作(2024)

一、IJRR简介 The International Journal of Robotics Research&#xff08;IJRR&#xff09;是机器人领域的高水平学术期刊&#xff0c;专注于发布关于机器人技术和相关领域的最新研究成果。IJRR创刊于1982年&#xff0c;是该领域的第一本学术刊物&#xff0c;2022-2023最新影…

el-dialog封装组件

父页面 <template><div><el-button type"primary" click"visible true">展示弹窗</el-button><!-- 弹窗组件 --><PlayVideo v-if"visible" :visible.syncvisible /></div> </template><sc…

[Redis]——Spring整合Redis(SpringDataRedis)

⭐准备工作&#xff1a; 确保Redis服务已启动idea开发环境 ⭐Redis整合步骤&#xff1a; 1.pom文件引入依赖 2.yml文件配置连接信息 3.修改Redis序列化方式 4.注入RedisTemplate 使用 小知识&#xff1a; Spring整合的Redis可以将Object对象自动序列化成字符串&#xff0…

探索API测试的奇妙世界:总结与思考!

本文主要是关于 API 测试的方法论探讨。 什么是 API 测试&#xff1f; API 测试是一种软件测试&#xff0c;涉及验证和确认应用程序接口 ( API ) 及其与其他服务组件的交互。测试重点关注软件架构的业务逻辑层&#xff0c;确保API按预期运行、数据准确交换、服务在各种条件下…

在 Centos 7 上编译 OpenJDK 23 及错误处理

在 Centos 7 上编译 OpenJDK 23 目的 希望在 JDK 源码中添加自己的中文注释&#xff0c;方便对学习过程进行记录。 其中遇到的错误主要有BootJDK的版本问题和字符编码问题&#xff0c;没有去调查哪些版本是兼容的&#xff0c;本文主要处理字符编码问题。 操作环境 组件版本…

RS编码的FPGA实现

RS编码&#xff0c;即Reed-solomon codes&#xff0c;是一类纠错能力很强的特殊的非二进制BCH码&#xff08;BCH码是一种有限域中的线性分组码&#xff0c;具有纠正多个随机错误的能力&#xff09;。对于任选正整数S可构造一个相应的码长为nqS-1的 q进制BCH码&#xff0c;而q作…

轻松玩转书生·浦语大模型趣味 Demo实战教程

大模型是什么&#xff1f; 大模型通常指的是机器学习或人工智能领域中参数数量巨大、拥有庞大计算能力和参数规模的模型。这些模型利用大量数据进行训练&#xff0c;并且拥有数十亿甚至数千亿个参数。大模型的出现和发展得益于增长的数据量、计算能力的提升以及算法优化等因素…

【QT】Qt Charts概述

目录 1 QtCharts模块 2 图表的主要组成部分 2.1 QChartView的功能 2.2 序列 2.3 坐标轴 2.4 图例 3 一个简单的QChart绘图程序 QtCharts是Qt提供的图表模块&#xff0c;在Qt5.7以前只有商业版才有Qt Charts&#xff0c;但是从Qt5.7开始&#xff0c;社区版本也包含了Qt C…

蓝海项目是真的好做吗?老隋分享的项目可不可靠?

在商业世界中&#xff0c;追求未充分开发的市场领域被视为一种创新的商业模式&#xff0c;这便是所谓的“蓝海战略”。随着社交媒体平台如抖音的兴起&#xff0c;许多创业者和企业开始关注并通过这些平台分享所谓的“蓝海项目”。其中&#xff0c;老隋作为抖音上的知名分享者&a…

MyBatis源码分析之基础支持层异常模块

(/≧▽≦)/~┴┴ 嗨~我叫小奥 ✨✨✨ &#x1f440;&#x1f440;&#x1f440; 个人博客&#xff1a;小奥的博客 &#x1f44d;&#x1f44d;&#x1f44d;&#xff1a;个人CSDN ⭐️⭐️⭐️&#xff1a;传送门 &#x1f379; 本人24应届生一枚&#xff0c;技术和水平有限&am…

c++的队列的用法

基本介绍 c的队列就是std::queue。 需要包含的头文件&#xff1a; #include<queue>queue就是先进先出队列 queue,就是队列&#xff0c;队列是一种容器适配器&#xff0c;专门设计用于在FIFO上下文中操作(先进先出)&#xff0c;其中将元素插入容器的一端并从另一端提…

Python爬虫实战第三例【三】【上】

零.实现目标 爬取视频网站视频 视频网站你们随意&#xff0c;在这里我选择飞某速&#xff08;狗头保命&#xff09;。 例如&#xff0c;作者上半年看过的“铃芽之旅”&#xff0c;突然想看了&#xff0c;但是在正版网站看要VIP&#xff0c;在盗版网站看又太卡了&#xff0c;…