热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CSS样式层叠和优先级

CSS样式层叠

CSS样式层叠

Css是用来干嘛的?



  • 美化静态HTML页面
  • 实现表现和内容分离
  • 便于页面风格的统一和修改(样式重用,提高开发效率)




HTML中使用CSS的方法


  1. 行内样式:混合在HTML标签里面,对每个元素单独定义样式

    行内样式


  2. 页面的内部样式:在与之间添加样式(重用性差,容易冗余)

    1. charset="UTF-8" />
    2. name="viewport" content=" />
    3. rel="stylesheet" href="style.css" />

  3. 链接外部样式资源:使用Link标签,只需要把公共的CSS单独保存为一个文件,其他页面就可以分别调用自身的CSS文件,如果要改变网站风格,修改公共的CSS文件就可以了,是开发常用的HTML+CSS使用方式

    1. charset="UTF-8" />
    2. name="viewport" content=" />
    3. rel="stylesheet" href="style.css" />

  4. 导入外部样式:import方式导入CSS样式表,和链接外部样式资源类似

    四种样式也有优先级,按照就近原则:行内样式 > 页面内部样式 > 链接外部样式资源 > 导入外部样式





样式引入实例

  1. charset="UTF-8" />
  2. name="viewport" content=" />
  3. rel="stylesheet" href="sytle1.css" />
  4. class="nav">
  5. class="title">标题
  6. class="girad">
  7. style="background-color: blue">1
  8. 2
  9. 3
  10. 4




CSS优先级和继承

CSS的冲突,就是优先级

CSS优先级规则



  1. CSS层叠样式表引入方法的优先级:内联式>内嵌式>链接式>导入式
  2. 在多个外部样式中,后出现的样式的优先级高于先出现的样式,也就是覆盖
  3. 选择器的优先级:ID样式>class样式>标记样式
  4. !important,这个样式的优先级就会默认提升到顶级,就像root权限一样

离代码越近,优先级越高


实例

  1. class="gridtable" cellpadding="15" cellspacing="2">
  2. class="row1" id="test">
  3. rowspan="2"> href="#">酒店
  4. href="#">海外酒店
  5. href="#">团购
  6. class="row1">
  7. href="#">特价酒店
  8. href="#">民宿
  9. class="row2">
  10. rowspan="2"> href="#">机票
  11. href="#">火车票
  12. href="#">汽车票
  13. class="row2">
  14. href="#">特价机票
  15. href="#">专车.出租车
  16. class="row3">
  17. rowspan="2"> href="#">旅游
  18. href="#">目的地攻略
  19. href="#">游轮
  20. class="row3">
  21. href="#">周边游
  22. href="#">定制旅行
  23. class="row4">
  24. href="#">景点.玩乐
  25. href="#">美食
  26. href="#">购物
  27. class="row4">
  28. href="#">礼品卡
  29. href="#">WIFI电话卡
  30. href="#">签证

  1. /** CSS 代码片段 **/
  2. #test {
  3. background-color: #e46766;
  4. }
  5. /* 0,1,0 */
  6. .gridtable {
  7. width: 608px;
  8. height: 57px;
  9. margin: 0 auto;
  10. text-align: center;
  11. }
  12. /* 0,1,1 */
  13. .gridtable a {
  14. text-decoration: none;
  15. color: #1f0c13;
  16. }
  17. .row1 {
  18. background-color: #267bd9;
  19. }
  20. /* 0,1,1 */
  21. .row1 a {
  22. color: #ffffff;
  23. }
  24. .row2 {
  25. background-color: #267bd9;
  26. }
  27. .row3 {
  28. background-color: #2e9415;
  29. }
  30. .row4 {
  31. background-color: #e58a1a;
  32. }


推荐阅读
  • 本文深入解析了Java面向对象编程的核心概念及其应用,重点探讨了面向对象的三大特性:封装、继承和多态。封装确保了数据的安全性和代码的可维护性;继承支持代码的重用和扩展;多态则增强了程序的灵活性和可扩展性。通过具体示例,文章详细阐述了这些特性在实际开发中的应用和优势。 ... [详细]
  • CSS3 @font-face 字体应用技术解析与实践
    在Web前端开发中,HTML教程和CSS3的结合使得网页设计更加多样化。长期以来,Web设计师受限于“web-safe”字体的选择。然而,CSS3中的`@font-face`规则允许从服务器端加载自定义字体,极大地丰富了网页的视觉效果。通过这一技术,设计师可以自由选择和使用各种字体,提升用户体验和页面美观度。本文将深入解析`@font-face`的实现原理,并提供实际应用案例,帮助开发者更好地掌握这一强大工具。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • 本文详细介绍了使用 Python 进行 MySQL 和 Redis 数据库操作的实战技巧。首先,针对 MySQL 数据库,通过 `pymysql` 模块展示了如何连接和操作数据库,包括建立连接、执行查询和更新等常见操作。接着,文章深入探讨了 Redis 的基本命令和高级功能,如键值存储、列表操作和事务处理。此外,还提供了多个实际案例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • Java环境中Selenium Chrome驱动在大规模Web应用扩展时的性能限制分析 ... [详细]
  • DRF框架中Serializer反序列化验证机制详解:深入探讨Validators的应用与优化
    在DRF框架的反序列化验证机制中,除了基本的字段类型和长度校验外,还常常需要进行更为复杂的条件限制校验。通过引入`validators`模块,可以实现自定义校验逻辑,如唯一字段校验等。本文将详细探讨`validators`的使用方法及其优化策略,帮助开发者更好地理解和应用这一重要功能。 ... [详细]
  • AngularJS 进阶指南:第三部分深入解析
    在本文中,我们将深入探讨 AngularJS 的指令模型,特别是 `ng-model` 指令。`ng-model` 指令用于将 HTML 元素与应用程序数据进行双向绑定,支持多种数据类型验证,如数字、电子邮件地址和必填项检查。此外,我们还将介绍如何利用该指令优化表单验证和数据处理流程,提升开发效率和用户体验。 ... [详细]
  • 单链表的高效遍历及性能优化策略
    本文探讨了单链表的高效遍历方法及其性能优化策略。在单链表的数据结构中,插入操作的时间复杂度为O(n),而遍历操作的时间复杂度为O(n^2)。通过在 `LinkList.h` 和 `main.cpp` 文件中对单链表进行封装,我们实现了创建和销毁功能的优化,提高了单链表的使用效率。此外,文章还介绍了几种常见的优化技术,如缓存节点指针和批量处理,以进一步提升遍历性能。 ... [详细]
  • 如何使用Python去除字符串中的非中文字符[Python编程技巧]
    在 Python 中,可以通过正则表达式来实现去除字符串中的非中文字符。具体方法是使用 `re` 模块中的 `re.sub()` 函数,配合正则表达式 `[^u4e00-u9fa5]` 来匹配并替换掉所有非中文字符,从而保留字符串中的中文部分。这种方法简洁高效,适用于多种文本处理场景。 ... [详细]
  • PHP自学必备:从零开始的准备工作与工具选择 ... [详细]
  • 初探性能优化:入门指南与实践技巧
    在编程领域,常有“尚未精通编码便急于优化”的声音。为了从性能优化的角度提升代码质量,本文将带领读者初步探索性能优化的基本概念与实践技巧。即使程序看似运行良好,数据处理效率仍有待提高,通过系统学习性能优化,能够帮助开发者编写更加高效、稳定的代码。文章不仅介绍了性能优化的基础知识,还提供了实用的调优方法和工具,帮助读者在实际项目中应用这些技术。 ... [详细]
  • 作为软件工程专业的学生,我深知课堂上教师讲解速度之快,很多时候需要课后自行消化和巩固。因此,撰写这篇Java Web开发入门教程,旨在帮助初学者更好地理解和掌握基础知识。通过详细记录学习过程,希望能为更多像我一样在基础方面还有待提升的学员提供有益的参考。 ... [详细]
  • 安装Windows 10必须使用U盘吗?如果不使用U盘,还有哪些方法可以安装Windows 10?
    安装Windows 10必须使用U盘吗?如果不使用U盘,还有哪些方法可以安装Windows 10? ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • iOS 设备唯一标识获取的高效解决方案与实践
    在iOS 7中,苹果公司再次禁止了对MAC地址的访问,使得开发者无法直接获取设备的物理地址。为了在开发过程中实现设备的唯一标识,苹果推荐使用Keychain服务来存储和管理唯一的标识符。此外,还可以结合其他技术手段,如UUID和广告标识符(IDFA),以确保设备的唯一性和安全性。这些方法不仅能够满足应用的需求,还能保护用户的隐私。 ... [详细]
author-avatar
js陈富军中草药
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有