当前位置: 首页 > news >正文

第二章:CSS秘典 · 色彩与布局的力量

剧情承接:色彩失衡的荒原

林昊穿过 HTML 大门,眼前却是一片 灰白扭曲的荒原。所有页面元素如同幽灵般漂浮,没有色彩、没有结构,错乱无章。

这是失控的样式荒原。” 零号导师的声音再次响起,
HTML 给了你骨架,CSS 是赋予世界色彩与形态的皮肤与血肉。

一个形体扭曲的怪物从远方袭来——它名为 默认样式怪(Default Render),专吞未设样式的页面。


秘典显现:CSS 三种注入方式

导师唤出《CSS秘典》,林昊学会三种掌控页面样式的方式:

  1. 内联样式(inline style):

    <p style="color: red;">我是红色文字</p>
    

    直接写在标签里,适合快速测试,但不推荐用于大型项目。

  2. 内部样式表(internal style):

    <head><style>p {color: blue;}</style>
    </head>
    

    放在 <head> 内部,适合小项目或教学演示。

  3. 外部样式表(external stylesheet):

    <head><link rel="stylesheet" href="styles.css" />
    </head>
    

    最推荐的方式,分离结构与样式,利于维护与复用。


第一场战斗:默认样式怪

林昊输入以下样式:

body {background-color: #f0f0f0;color: #333;font-family: Arial, sans-serif;
}

灰白的荒原立刻变得柔和有序,怪物发出哀嚎。林昊的世界第一次染上色彩。


选择器三式

导师赐他三把“样式之刃”——

  1. 元素选择器

    p {color: purple;
    }
    

    直接命中所有该标签的元素。

  2. 类选择器

    <p class="highlight">高亮文字</p>
    
    .highlight {background-color: yellow;
    }
    

    你可以给多个元素加相同的类,批量施法。

  3. ID 选择器

    <p id="title">我是唯一的标题</p>
    
    #title {font-size: 24px;
    }
    

    ID 是唯一标识,一击必中,但请勿滥用。”


CSS 属性魔法

林昊开始掌握更强的属性控制术:

🎨 颜色相关

color: #222;
background-color: #fff;

🔠 字体相关

font-size: 18px;
font-weight: bold;
text-align: center;

📏 尺寸与边框

width: 300px;
height: 100px;
border: 2px solid black;

📦 盒模型(Box Model)初识

导师画出一张神秘图纸:

+---------------------------+
|      margin(外边距)     |
|  +---------------------+  |
|  |   border(边框)     |  |
|  |  +---------------+  |  |
|  |  | padding       |  |  |
|  |  | +-----------+ |  |  |
|  |  | | content   | |  |  |
|  |  | +-----------+ |  |  |
|  |  +---------------+  |  |
|  +---------------------+  |
+---------------------------+

所有元素都是一个盒子。理解这个模型,你将掌控网页的布局逻辑。


对决升级:浮动乱码与堆叠鬼影

怪物退去,却遗留混乱的元素叠加和漂浮。导师开启下一课:

💠 布局基础

  • display 属性

    div {display: block;
    }span {display: inline;
    }
    

    块级元素(block)独占一行,行内元素(inline)紧凑排列。

  • margin 与 padding

    .container {margin: 20px;padding: 10px;
    }
    

    外距是对外扩展,内距是给自己留呼吸空间。

  • box-sizing

    * {box-sizing: border-box;
    }
    

    设定这个,可以让宽高包含 padding 与 border,不再出现超出宽度的混乱。


世界初现秩序

林昊在《styles.css》中编写如下内容:

body {background-color: #eef2f5;font-family: 'Segoe UI', sans-serif;color: #333;padding: 40px;
}.container {width: 600px;margin: 0 auto;background-color: #fff;padding: 20px;border-radius: 8px;box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}.title {font-size: 32px;color: #2c3e50;
}

原本混乱的网页,如今变成一个精致的虚拟控制台,文字居中排布,页面有边距、结构分明,颜色温润。


🛠️ 练习任务

在 HTML 页面基础上,创建一个外部 CSS 文件,完成以下任务:

  1. 页面背景色改为浅灰;
  2. 主体容器居中并设置宽度;
  3. 添加一组 .card 样式,带有圆角、阴影;
  4. 所有标题字体为蓝色,段落字体为灰色。

🔮 预告:第三章《JavaScript引擎 · 行为之火》

随着布局稳定,世界却仍然静止。林昊必须掌握行为逻辑——通过 JavaScript 为页面注入交互、动态变化与逻辑判断。

即将迎战:静态世界的沉默守卫者——死页(Dead Page)

http://www.xdnf.cn/news/445051.html

相关文章:

  • 时源芯微| KY键盘接口静电浪涌防护方案
  • 【免杀】C2免杀技术(三)shellcode加密
  • ​Android学习总结之handler中源码解析和场景回答
  • scikit-learn在无监督学习算法的应用
  • 【愚公系列】《Manus极简入门》038-数字孪生设计师:“虚实映射师”
  • kaggle薅羊毛
  • 计算机操作系统(七)详细讲解进程的组成与特性,状态与转换
  • ESP32WIFI工具加透传
  • 生命之舞:创建,终止与等待,Linux进程控制的交响乐章
  • Jmeter元件 CSV Data Set Config详解
  • (1-4)Java Object类、Final、注解、设计模式、抽象类、接口、内部类
  • Doris与ClickHouse深度比较
  • 语音合成之十四 文本转语音(TTS)开源数据集
  • 互联网大厂Java求职面试:优惠券服务架构设计与AI增强实践-6
  • 使用IDEA创建Maven版本的web项目以及lombok的使用
  • 玛哈特矫平机:金属板材加工中的“平整大师”
  • 解读RTOS 第七篇 · 驱动框架与中间件集成
  • Milvus 全面解析
  • 非异步信号安全函数
  • The 2022 ICPC Asia Xian Regional Contest(E,L)题解
  • 5 WPF中的application对象介绍
  • DHCP协议
  • 每日算法-250514
  • Untiy基础学习(十四)核心系统—物理系统之碰撞检测代码篇 刚体,碰撞体,材质
  • 网络运维过程中的常用命令
  • idea中编写spark程序
  • 通过迁移学习改进深度学习模型
  • Python Day25 学习
  • MCU裸机程序如何移植到RTOS?
  • MySQL 入门大全:数据类型