> css可能会令人沮丧,尤其是当事情不像预期的那样。但是了解正确的术语可以产生巨大的变化。它可以帮助您编写清洁代码,更快地调试问题,并更有效地进行沟通,无论您是在寻求帮助,解释概念还是在线搜索解决方案。
>
本文涵盖了基本css概念,从基本原理到更高级的主题
1。css规则的解剖
> a css规则是一组指令,可以定义元素应如何样式。它由a选择器 组成,然后是a 声明块 包含在卷曲括号中。该块可以包含一个或多个声明。 这是每个部分的分解:
选择器:指定样式适用于。
的元素态态在
.container { /* ".container" is a selector */ color: black; /* "color" is a property, and "black" a value */ display: grid; /* the combination of property + value is called declaration */}
2。组合者
组合剂允许您根据元素与dom中的其他元素的关系来定位元素。 有四种类型的组合者:
>后代组合 ([whitespace]):选择任何深度的所有后代元素,包括孩子,孙子孙女及其他。
儿童组合
(>):仅选择元素的直接子。 >一般同胞组合组合
(〜)(也称为随后的sibling comminator):选择在指定元素之后出现的所有兄弟姐妹,不一定立即。
>相邻同胞
( )(也称为
立即学习“前端免费学习笔记(深入)”;
青泥AI
青泥学术AI写作辅助平台
302 查看详情 > sext-sibling comminator):选择一个紧随其后的元素。>
/* descendant combinator - selects all inside
*/div p { color: rebeccapurple;}/* child combinator - selects only direct
children of
*/div > p { font-weight: bold;}/* general sibling combinator - selects all
that come after
*/h2 ~ p { margin-inline-start: 1rem;}/* adjacent sibling combinator - selects the first immediately after
*/h2 + p { margin-inline-start: 1rem;}
3。框型号框模型是浏览器将每个html元素作为矩形盒渲染的方式,由内容,填充,边框和边距组成。
content:默认元素根据其包含的内容(例如,文本或图像)。
填充 :内容与元素边框之间的空间。
border :围绕元素的空间,给出了定义的轮廓。
边缘 :边框和相邻元素之间的空间。它用于在元素之间创建分离。
4。逻辑属性
>逻辑属性基于文本方向(从左到右,右至左或从上到下)调整其行为,而不是固定的物理方向(顶部,右,底部,左)。这允许更加灵活,响应迅速的布局,特别是对于使用不同写作说明的语言。了解逻辑属性的两个关键字是 and
block
inline :指根据语言编写单词的方向。对于英语,这意味着从左到右,但是对于像阿拉伯语这样的语言,它将是左右。
block :您可以将块视为文本到达线末端后包裹的方向。在诸如英语之类的从左到右语言中,块方向是自上而下的,这就是为什么诸如<divphpcngpcngtphpcn之类的块级元素垂直堆叠的原因,一个属于另一个。
知道这一点,我们可以更好地了解逻辑属性,并使用以下示例::
边距内线启动:在内联轴开始的方向上增加边距。对于英语(从左到右),这将等效于左翼。在左至左的语言中,它像阿拉伯语一样,在相反的一边(相当于边缘右翼)。>
>还有许多其他逻辑属性,例如填充,边界块和插图。了解有关mdn文档中逻辑属性的更多信息。 5。堆叠上下文
如果您曾经将z index应用于一个元素:99999,并且想知道为什么它不重叠其他元素,那么您可能遇到了堆叠的上下文。
>每当您将z索引分配给元素时,就会创建堆叠上下文。此上下文本质上限制了如何将其内部元素分层。这意味着,如果您具有z索引的
:3和带有z索引的
:2 cn,不管他们自己的z索引有多高。
的堆叠上下文限制了其中的元素,这意味着它们只能在该范围内分层,该范围的z索引为2。
6。层(@layer规则)
css中的
层使您可以以一种使您对特异性和级联的控制方式组织css规则。这在风格冲突和意外覆盖可能成为问题的大型项目中特别有用。
例如,您可以将样式分为三个不同的层:
base
,
组件和 utisition 。
>在> base 层中,您可以包含适用于整个项目的重置和基本样式。
>组件
层,您定义了项目中组件的核心样式(例如,按钮,卡片,卡片,导航)。> >在
>实用程序层中,您可以创建应用小型可重复使用的样式规则的实用程序类(例如,设置显示的隐藏类:无)。
>通过将图层订购为
base ,组件>和>>>>>>>>实用程序
>,您确保重置不会意外地覆盖组件中的样式,并且该公用事业类优先于核心组件样式。
该组织提供更好的可预测性和控制权,尤其是随着您项目的增长。
@layer base, components, utilities;@layer base { *, *::before, *::after { ... }}@layer components { .button { ... }}@layer utilities { .hidden { ... }}
了解有关@layer规则的更多信息 结论
掌握关键css概念,例如《规则解剖》,组合器,框模型,逻辑属性,堆叠式上下文和层,对于构建有效,可维护的web布局至关重要。这些原则使您可以更好地控制样式,定位和元素互动,从而更容易应对设计挑战。
>通过了解css的工作原理,您可以编写清洁器代码并创建功能性和视觉吸引力的网站。继续完善您的技能,css将成为您网络开发工具包中更强大的工具!
以上就是CSS术语每个开发人员都应该知道的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1149752.html
赞 (0)
打赏
微信扫一扫
支付宝扫一扫
相关推荐
require用于声明项目运行必需的依赖,如框架、数据库组件和第三方SDK,这些包会随项目部署到生产环境;2. require-dev用于声明仅在开发和测试阶段需要的工具,如PHPUnit、PHPStan、Faker等,不会默认部署到生产环境;3. 安装时composer install根据环境决定…
在Django电商项目中,当使用AJAX动态加载过滤后的产品列表时,常遇到图片无法正常显示的问题。这通常是由于前端模板中图片加载方式(如data-setbg属性结合JavaScript库)与AJAX动态内容更新机制不兼容所致。解决方案是直接在AJAX返回的HTML中使用标准的标签来渲染图片,确保浏览…
推荐开源免费PHP开发工具以提升效率:VS Code、Sublime Text轻量高效,PhpStorm专业强大;调试用Xdebug、Kint、Ray;依赖管理选Composer;代码质量工具包括PHPStan、Psalm、PHP_CodeSniffer;数据库管理可用%ignore_a_1%MyA…
CSS动画指南:手把手教你制作快速闪烁特效 CSS动画是网页设计中常用的技术之一,通过CSS属性的过渡和变化,能够为网页增添生动和吸引力。其中,快速闪烁特效是一种常见而又引人注目的效果,本文将为您详细介绍如何利用CSS实现这一特效,并提供具体的代码示例。 在开始之前,我们先明确一下快速闪烁特效的效果…
本教程探讨golang中如何高效控制结构体字段在json序列化时的可见性。当需要将包含敏感信息的结构体数组转换为json响应时,通过利用`encoding/json`包提供的结构体标签,特别是`json:”-“`,可以轻松实现对特定字段的忽略,从而避免敏感数据泄露,确保api…
本文旨在探讨Python中海象运算符(:=)在条件赋值场景下的应用。通过对比传统if/else语句与海象运算符,以及条件表达式,分析海象运算符在简化代码、提高可读性方面的优势与局限性。并通过具体示例,展示如何在列表推导式等场景下合理使用海象运算符,同时强调其潜在的复杂性及替代方案,帮助开发者更好地掌…
提升Debian系统syslog (通常基于rsyslog)性能,关键在于精简配置和高效处理日志。以下策略能有效优化日志管理,提升系统整体性能: 精简配置,高效加载: 在rsyslog配置文件中,仅加载必要的输入、输出和解析模块。 使用全局指令设置日志级别和格式,避免不必要的处理。 自定义模板: 创…
首先创建含enctype的HTML表单,再用PHP接收文件,检查目录、移动临时文件,验证类型与大小,生成唯一文件名,并调整php.ini限制以确保上传成功。 如果您尝试在PHP项目中添加图片上传功能,但服务器无法正确接收或保存文件,则可能是由于表单配置、文件处理逻辑或安全限制的问题。以下是实现该功能…
对于任何追求在线成功的企业来说,拥有一个迷人且实用的网站至关重要。在 Arham Web Works,我们了解创建网页设计的复杂性,不仅能吸引访问者,还能将他们转化为忠实的客户。我们的网页设计方法是全面的,将美学吸引力与无缝功能相结合。本指南将深入探讨网页设计服务的关键方面,展示为什么我们的专业知识…
本教程旨在帮助开发者在 CodeIgniter 框架中,从日期字符串中准确提取周数。我们将使用 PHP 内置的 DateTime 类,并提供详细的代码示例和注意事项,确保您能够轻松地在项目中实现此功能。 使用 DateTime 类获取周数 PHP 的 DateTime 类提供了一种便捷的方式来处理日…
比特币是一种去中心化的数字货币,基于区块链技术实现点对点交易,具有匿名性、有限发行和不可篡改等特点;新手可通过交易所购买,P2P交易获得比特币,常用平台包括Binance、OKX和Huobi;交易流程包括注册账户、实名认证、绑定支付方式、充值法币并下单购买,可选择市价单或限价单;比特币存储方式有交易…
SFINAE 是“替换失败不是错误”的原则,指模板实例化时若参数替换导致错误,只要存在其他合法候选,编译器不报错而是继续重载决议。它用于条件启用模板、类型检测等场景,如通过 decltype 或 enable_if 控制函数重载,实现类型特征判断。尽管 C++20 引入 Concepts 简化了部分…
如何在追加元素后使其绑定类事件生效 在页面中引入三方 JavaScript 类并通过添加相应 class 来调用事件方法是一种常见的做法。然而,如果通过 JavaScript 追加标签元素,即使添加了对应的 class,事件也可能无法生效。 为了解决这个问题,可以尝试以下步骤: 检查追加的标签是否为…
滚动条可以存在也可以不存在,本文主要介绍了html 隐藏滚动条和去除滚动条的方法的相关资料,大家一起来学习一下html隐藏滚动条或去除滚动条的方法吧。 1. html 标签加属性 XML/HTML Code复制内容到剪贴板 2.body中加入以下代码 立即学习“前端免费学习笔记(深入)”; html…
在Golang的gRPC流式通信中,必须通过context.Context处理异常。应监听上下文取消或超时,及时释放资源,设置合理超时,避免连接长时间挂起,并在goroutine中通过context控制生命周期。 在使用 Golang 和 gRPC 实现流式通信时,异常处理是确保服务健壮性的关键部分…
本文旨在解决go语言mgo库中构建复杂查询时,特别是涉及嵌套`bson.m`和日期范围筛选的常见错误。我们将深入剖析`bson.m`的类型特性,解释为何直接索引`interface{}`会导致“invalid operation”错误,并提供一种推荐的、结构清晰的代码重构方案,以确保查询条件能够正确…
max-height 属性设置元素的最大高度。 说明 该属性值会对元素的高度设置一个最高限制。因此,元素可以比指定值矮,但不能比其高。不允许指定负值。 注意:max-height 属性不包括外边距、边框和内边距。 立即学习“前端免费学习笔记(深入)”; 值描述none 默认。定义对元素被允许的最大高…
首先保存文件为.html格式,再通过浏览器或Live Server插件打开预览;推荐安装Live Server实现本地服务器运行与实时刷新,提升开发体验。 在 VS Code 上运行 HTML 文件并不需要复杂的配置,只需几个简单步骤即可预览页面效果。VS Code 本身是一个代码编辑器,不直接运行…
很多人想把txt文档转为html,但是却不知道怎么把txt转为html,下面为你推荐一款比较好用的转换器,并且可以把所有的文档都可以转为html格式的,下面我们看一下如何把TXT转化为html格式的文档。 1.首先我们在百度上搜索PDF转换器,我们一定要到正规的网站上下载,一般正规的网站的上的软件都…