一、CSS 的作用
CSS 的主要作用是为网站赋予独特的外观和样式。通过 CSS ,我们可以实现以下功能:1、改变字体、颜色和大小:用 CSS 为 HTML 元素添加样式,改变其字体、颜色、大小等样式,使之更具吸引力。
<style> p { font-family: Arial, sans-serif; color: #333; font-size: 16px; } </style>
2、控制布局和定位:通过浮动、绝对定位、相对定位、display 等属性,实现元素在网页中的灵活布局。
<style> .container { width: 960px; margin: 0 auto; } .left { float: left; width: 200px; } .right { float: right; width: 600px; } </style>
3、品牌化和风格统一:使用 CSS ,网站可以使用自定义颜色、字体等设定,从而实现品牌化和风格统一。
<style> a { color: #3e78ed; text-decoration: none; } .btn { background-color: #3e78ed; color: #fff; padding: 10px 20px; border-radius: 5px; } </style>
二、CSS 的语法
CSS 的语法由选择器、属性和值组成,如下所示:选择器 { 属性: 值; 属性: 值; ... }选择器用于选择 HTML 元素。属性指需要改变的样式,可以是字体、颜色、宽度等等。值指需要为属性设定的具体的数值或者字符串值。 选择器有多种不同的类型,其中最基础的是元素选择器。例如,下面的代码通过元素选择器为所有段落添加样式:
<style> p { font-size: 16px; color: #333; line-height: 1.5; } </style>属性和值之间用冒号分隔,每个属性值对以分号隔开,如上例中的 font-size: 16px。
三、CSS 的优先级
CSS 样式的优先级是由选择器的特定性(specificity)和源序列(source order)共同决定的。特定性指的是选择器的优先级,来源于它所包含的元素、类、属性、伪类等。源序列指的是样式表出现在样式表中的顺序,后出现的样式表会覆盖前面的样式表。 选择器的优先级可以用简单的数值表示,数值越高优先级越高。特例是用 !important 标记的样式祖先,它们总是具有最高优先级。 以下是特定性优先级计算规则的摘要:1、ID 选择器比属性选择器、类选择器和元素选择器的优先级高。
2、如果两个相同优先级的选择器选择了同样的元素,则后添加的选择器为真。
3、直接写在元素标签上的样式,其特定性均为 1,比除了 !important 之外的任何其他选择器优先级都低。
4、!important 规则具有最高优先级。
四、CSS 的样式继承
CSS 样式可以继承,这表示某个元素获得该元素的父元素或祖先元素的属性值。例如,下面的代码实现了 p 元素继承了 div 元素的文本样式:<style> div { font-size: 14px; color: #333; } p { font-size: inherit; color: inherit; } </style> <div> <p>This text is styled with inherit properties.</p> </div>继承是一种非常有用的 CSS 特性,使得开发人员能够更轻松地实现网站全局样式的更新,同时也可以减少样式冗余。
五、CSS 的常见技巧
CSS 有很多有用的技巧,以下是其中的一些:1、响应式设计:使用媒体查询,针对不同的屏幕大小,改变样式,从而实现响应式设计。
<style> @media only screen and (max-width: 600px) { body { font-size: 14px; } } @media only screen and (max-width: 400px) { body { font-size: 12px; } } </style>
2、动画效果:使用 CSS3 transition 和 animation 属性,实现动画效果。
<style> .box { width: 100px; height: 100px; background: #3e78ed; transition: all 0.5s ease-in-out; } .box:hover { transform: scale(1.2); } .circle { width: 50px; height: 50px; border-radius: 50%; background: #3e78ed; animation: rotate 2s linear infinite; } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } </style> <div class="box"></div> <div class="circle"></div>
3、字形图标:使用 font-face 和 icon-font 等技术,实现网页字形图标。
<style> @font-face { font-family: "FontAwesome"; src: url("../fonts/fontawesome-webfont.eot?v=4.3.0"); src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.3.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.3.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.3.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.3.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular") format("svg"); font-weight: normal; font-style: normal } .fa:before { font-family: FontAwesome; content: "\f067"; } </style> <i class="fa"></i>