<h1>Hello Worldh1>
h1
就是一个HTML元素
,h1
是header1
的简写,意思是一级标题。
结束标记:
开始标记和结束标记的唯一区别就是结束标记多了一个/
。<h1>Hello Worldh1>
<h2>CatPhotoApph2>
h
是英文header
标题的缩写,标题无处不在,它的应用范围十分广泛:网站结构、写作文、PPT等。h1是主标题,h2是副标题,h3、h4、h5、h6依次递减字体的大小。<h1>Hello Worldh1>
<h2>我家的猫咪h2>
<p>"Hello Paragraph"p>
p
是英文paragraph
段落的缩写,经常被用来创建一个段落,就和你写作文一样。
注释有两个功能:
可以通过删除来删除注释。
<h2>我家的猫咪h2>
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
<h2 style="color: red">我家的猫咪h2>
<p>在大家心目中……p>
color
用来指定颜色。h2
元素的style
(样式)来达到目的。<style>
h2{color: red}
style>
<h2>我家的猫咪h2>
<p>在大家心目中……p>
CatPhotoApp
,你就给h2
元素添加了inline style
(内联样式)。CSS
(Cascading Style Sheets)。style
元素: CSS
>
>
在这个style
元素内, 你可以为所有的h2
元素创建一个元素选择器
。比如,如果你想要将所有的h2元素设置为红色, 你的代码应该看起来像这样:
css
>
>
CSS
后要删除内联样式,因为内联样式有更高的优先级。<style>
.red-text{
color: red;
}
style>
<h2 class="red-text">我家的猫咪h2>
<p>在大家心目中……p>
我们先声明一个类选择器:
<style> .blue-text { color: blue; } style>
上面的代码在
标记中声明了一个叫做
blue-text
的类样式。
然后在h2
元素上应用我们声明的类选择器:
<h2 class="blue-text">CatPhotoApph2>
注意:在CSS
中,类选择器应该添加.
为前缀。而在HTML中,class
属性不能添加.
为前缀。这是因为在CSS
中如果类选择器前不添加. 浏览器就会误认为类选择器是一个元素选择器。
<style>
.red-text{
color: red;
}
style>
<h2 class="red-text">我家的猫咪h2>
<p class="red-text">在大家心目中……p>
CSS
类选择器必须添加.
为前缀,但在HTML中class
属性的值不需要添加.
为前缀<style>
.red-text {
color: red;
}
p{
font-size: 16px;
}
style>
font-size
来控制的<style>
.red-text {
color: red;
}
p{
font-size: 16px;
font-family: Monospace;
}
style>
font-family
属性来设置元素的字体。<link href="https://fonts.gdgdocs.org/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster;
}
p {
font-size: 16px;
font-family: Monospace;
}
style>
link
标签来引入谷歌Lobster字体。
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster, Monospace;
}
Monospace
、Serif
和Sans-Serif
。自动降级
到另一种字体。=/images/relaxing-cat.jpg>
img
元素来为你的网站添加图片,使用src
属性指向一个图片的具体地址。img
元素是自关闭元素,不需要结束标记。<link href="https://fonts.gdgdocs.org/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
.smaller-image {
width: 100px;
}
h2 {
font-family: Lobster, Monospace;
}
p {
font-size: 16px;
font-family: Monospace;
}
style>
<h2 class="red-text">CatPhotoApph2>
<img class=smaller-image src="/images/relaxing-cat.jpg">
CSS
包含一个控制元素宽度的width
属性。像控制字体一样,我们使用px
(像素)来指定图片的宽度。larger-image
的类选择器,把HTML元素的宽度设定为500像素,我们使用:
CSS
>
>
<link href="https://fonts.gdgdocs.org/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster, Monospace;
}
p {
font-size: 16px;
font-family: Monospace;
}
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
}
.smaller-image {
width: 100px;
}
style>
<h2 class="red-text">CatPhotoApph2>
<img class="smaller-image thick-green-border" src="/images/relaxing-cat.jpg">
CSS
边框的属性有style
(样式)、color
(颜色)、width
(宽度)、height
(高度)等。px
)、边框样式为固体(solid
),代码如下:
CSS
>
>
class
到一个元素,只需要在多个class
之间用空格分开即可。例如:
<style>
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
border-radius: 10px;
}
CSS
的一个叫border-radius
(边框半径)的属性来让它的边框变成圆的。border-radius
的属性值。border-radius
到.thick-green-border
类选择器,也可以添加到.smaller-image
类选择器。<style>
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
border-radius: 50%;
}
border-radius
边框半径的值。border-radius
的值为50%
时图片即为圆形,0%
时为正方形。<a href="http://freecatphotoapp.com">cat photosa>
a
元素,也叫anchor
(锚点)元素,既可以用来链接到外部地址实现页面跳转功能,也可以链接到当前页面的某部分实现内部导航功能。<p>Here's a link to <a href="http://freecatphotoapp.com">cat photosa> p>
Nesting
(嵌套)就是把一个元素放在另一个元素里面。<p>Here's a link to <a href="#">cat photosa> p>
a
元素,但此时你还不知道要将它们链接到哪儿,此时可以使用固定链接。a
元素的href
属性的值替换为一个#
,别名hash
(哈希)符号,将其变为一个固定链接。<a href="#"><img class="smaller-image thick-green-border" src="/images/relaxing-cat.jpg">a>
<a href="#"><img class="smaller-image thick-green-border" src="/images/relaxing-cat.jpg" alt="A cute orange cat lying on it's back">a>
alt
属性,也被称为alt text
, 是当图片无法加载时显示的替代文本。alt
属性对于盲人或视觉损伤的用户理解一幅图片中所描绘的内容非常重要,搜索引擎也会搜索alt
属性。alt
属性!img
元素添加一个alt
属性:
HTML
>
>
<p>Things cats love:p>
<ul>
<li>cat nipli>
<li>laser pointersli>
<li>lasagnali>
ul>
unordered lists
(无序列表), 或带项目符号的列表。
元素开始,并包含一个或多个
元素。“`HTML
- milk
- cheese
将会创建一个带项目符号的”milk”和”cheese”列表。
<p>Things cats love:p>
<ul>
<li>cat nipli>
<li>laser pointersli>
<li>lasagnali>
ul>
<p>Top 3 things cats hate:p>
<ol>
<li>flea treatmentli>
<li>thunderli>
<li>other catsli>
ol>
ordered lists
(有序列表), 或数字编号列表。
元素开始,并包含一个或多个
元素。HTML
>
>- Garfield
>- Sylvester
>
>
将创建一个包含”Garfield”和”Sylvester”的数字编号列表。
type="text">
Text input
(文本输入框)是用来获得用户输入的绝佳方式。
HTML
>
>
type="text" placeholder="cat photo URL">
input
(输入)框输入任何东西之前放置在input
(输入)框中的预定义文本。
HTML
>
>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL">
form>
form
元素添加一个action
属性来达到此目的。action
属性的值指定了表单提交到服务器的地址。
HTML
>
>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL">
<button type="submit">Submitbutton>
form>
form
添加一个submit
(提交)按钮,点击这个按钮,表单中的数据将会被发送到你通过action
属性指定的地址上。submit
按钮的例子
HTML
>
>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
form>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
<label><input type="radio" name="indoor-outdoor">indoorlabel>
<label><input type="radio" name="indoor-outdoor">outdoorlabel>
form>
radio button
(单选按钮)label
(标签)元素中。name
属性。
HTML
>
>
<form action="/submit-cat-photo">
<label><input type="radio" name="indoor-outdoor"> Indoorlabel>
<label><input type="radio" name="indoor-outdoor"> Outdoorlabel>
<label><input type="checkbox" name="personality"> Lovinglabel>
<label><input type="checkbox" name="personality"> Lazylabel>
<label><input type="checkbox" name="personality"> Energeticlabel>
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
form>
checkboxes
(复选按钮)复选按钮是input的输入框的另一种类型。label
元素中。name
属性。
HTML
>
>
<form action="/submit-cat-photo">
<label><input type="radio" name="indoor-outdoor" checked> Indoorlabel>
<label><input type="radio" name="indoor-outdoor"> Outdoorlabel>
<label><input type="checkbox" name="personality" checked> Lovinglabel>
<label><input type="checkbox" name="personality"> Lazylabel>
<label><input type="checkbox" name="personality"> Energeticlabel>
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
form>
checked
属性,你可以设置复选按钮和单选按钮默认被选中。input
元素中添加属性checked
HTML
>
>
<div>
<p>Things cats love:p>
<ul>
<li>cat nipli>
<li>laser pointersli>
<li>lasagnali>
ul>
<p>Top 3 things cats hate:p>
<ol>
<li>flea treatmentli>
<li>thunderli>
<li>other catsli>
ol>
div>
div
元素,也被称作division
(层)元素,是一个盛装其他元素的通用容器。CSS
的继承关系把div
上的CSS
传递给它所有子元素。来标记一个div
元素的开始,然后用
来标记一个div
元素的结束。<link href="https://fonts.gdgdocs.org/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster, Monospace;
}
p {
font-size: 16px;
font-family: Monospace;
}
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
border-radius: 50%;
}
.smaller-image {
width: 100px;
}
.gray-background {
background-color: gray;
}
style>
<h2 class="red-text">CatPhotoApph2>
<p>Click here for <a href="#">cat photosa>.p>
<a href="#"><img class="smaller-image thick-green-border" alt="A cute orange cat lying on its back" src="/images/relaxing-cat.jpg">a>
<div class="gray-background">
<p>Things cats love:p>
<ul>
<li>cat nipli>
<li>laser pointersli>
<li>lasagnali>
ul>
<p>Top 3 things cats hate:p>
<ol>
<li>flea treatmentli>
<li>thunderli>
<li>other catsli>
ol>
div>
background-color
属性来设置一个元素的背景颜色。style
元素中:
CSS
> .green-background {
> background-color: green;
> }
>
<form action="/submit-cat-photo" id="cat-photo-form">
<label><input type="radio" name="indoor-outdoor" checked> Indoorlabel>
<label><input type="radio" name="indoor-outdoor"> Outdoorlabel>
<label><input type="checkbox" name="personality" checked> Lovinglabel>
<label><input type="checkbox" name="personality"> Lazylabel>
<label><input type="checkbox" name="personality"> Energeticlabel>
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
form>
class
属性之外,每一个HTML元素还可以使用id
属性。id
属性有若干好处,一旦当你开始使用jQuery
的时候你会有更深的体会。id
属性应该是唯一的,虽然浏览器并不强制唯一,但基于最佳实践,这一点是被广泛认可的,所以请不要给一个以上的元素设置相同的id
属性。h2
元素的id
属性为cat-photo-app
。
HTML
>
>
<link href="https://fonts.gdgdocs.org/css?family=Lobster" rel="stylesheet" type="text/css">
<style>
.red-text {
color: red;
}
h2 {
font-family: Lobster, Monospace;
}
p {
font-size: 16px;
font-family: Monospace;
}
.thick-green-border {
border-color: green;
border-width: 10px;
border-style: solid;
border-radius: 50%;
}
.smaller-image {
width: 100px;
}
.gray-background {
background-color: gray;
}
#cat-photo-form {
background-color: green;
}
style>
<h2 class="red-text">CatPhotoApph2>
<p>Click here for <a href="#">cat photosa>.p>
<a href="#"><img class="smaller-image thick-green-border" alt="A cute orange cat lying on its back" src="/images/relaxing-cat.jpg">a>
<div class="gray-background">
<p>Things cats love:p>
<ul>
<li>cat nipli>
<li>laser pointersli>
<li>lasagnali>
ul>
<p>Top 3 things cats hate:p>
<ol>
<li>flea treatmentli>
<li>thunderli>
<li>other catsli>
ol>
div>
<form action="/submit-cat-photo" id="cat-photo-form">
<label><input type="radio" name="indoor-outdoor" checked> Indoorlabel>
<label><input type="radio" name="indoor-outdoor"> Outdoorlabel>
<label><input type="checkbox" name="personality" checked> Lovinglabel>
<label><input type="checkbox" name="personality"> Lazylabel>
<label><input type="checkbox" name="personality"> Energeticlabel>
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submitbutton>
form>
cat-photo-element
的ID选择器 ,并设置背景色为绿色:
CSS
> #cat-photo-element {
> background-color: green;
> }
>
style
元素内部,定义类选择器必须添加.
为前缀,定义ID选择器必须添加#
为前缀。<style>
.injected-text {
margin-bottom: -25px;
text-align: center;
}
.box {
border-style: solid;
border-color: black;
border-width: 5px;
text-align: center;
}
.yellow-box {
background-color: yellow;
padding: 10px;
}
.red-box {
background-color: red;
padding: 20px;
}
.green-box {
background-color: green;
padding: 20px;
}
style>
<h5 class="injected-text">marginh5>
<div class="box yellow-box">
<h5 class="box red-box">paddingh5>
<h5 class="box green-box">paddingh5>
div>
padding
(内边距)、margin
(外边距)、border
(边框)。padding
控制元素内容content
和元素边框border
之间的距离。padding
即padding-top
&padding-bottom
。<style>
.green-box {
background-color: green;
padding: 20px;
margin: 20px;
}
margin
控制元素边框border
和元素实际所占空间的距离。margin
即padding-left
&padding-right
。<style>
.red-box {
background-color: red;
padding: 20px;
margin: -15px;
}
.green-box {
background-color: green;
padding: 20px;
margin: -15px;
}
margin
设置为负值,元素将会变大。<style>
.green-box {
background-color: green;
padding-top: 40px;
padding-left: 40px;
padding-right: 20px;
padding-bottom: 20px;
}
padding
。CSS
允许你使用padding-top
、padding-right
、padding-bottom
和padding-left
来控制元素上右下左四个方向的padding
。<style>
.green-box {
background-color: green;
margin-top: 40px;
margin-left: 40px;
margin-right: 20px;
margin-bottom:20px;
margin
。CSS
允许你使用margin-top
、margin-right
、margin-bottom
和margin-left
来控制元素上右下左四个方向的margin
。<style>
.green-box {
background-color: green;
padding: 40px 20px 20px 40px;
}
padding-top
、padding-right
、padding-bottom
和padding-left
属性外,你还可以集中起来指定它们,举例如下: HTML
> padding: 10px 20px 10px 20px;
>
这四个值以顺时针方式排列:顶部、右侧、底部、左侧,简称:上右下左。
<style>
.green-box {
background-color: green;
margin: 40px 20px 20px 40px;
}
margin
。margin-top
、margin-right
、margin-bottom
和margin-left
属性外,你还可以集中起来指定它们。<style>
body {
background-color: black;
}
style>
body
元素。background-color
设置为黑色,我们可以证明body
元素的存在。<style>
body {
background-color: black;
color: green;
font-family: Monospace;
}
style>
<h1>Hello Worldh1>
body
元素,并且其body
元素同样能够应用样式。body
元素应用样式,并且所有其他元素将继承你的body
元素的样式。<style>
body {
background-color: black;
font-family: Monospace;
color: green;
}
.pink-text {
color: pink;
}
style>
<h1 class="pink-text">Hello World!h1>
class
,然后将其应用到某元素,我们的class
会override
(覆盖)body
元素的color: green;
CSS 属性。<style>
body {
background-color: black;
font-family: Monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
style>
<h1 class="blue-text pink-text">Hello World!h1>
class
会覆盖body
元素的 CSS,那么下一个合乎情理的问题就是,我们怎样才能覆盖我们的pink-text class
呢?class
如何排序是无所谓的。然而,在
部分中class
声明的顺序却非常重要,第二个声明总是比第一个具有优先权。因为.blue-text
是第二个声明,它覆盖了.pink-text
属性。<style>
body {
background-color: black;
font-family: Monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
#orange-text {
color: orange;
}
style>
<h1 class="pink-text blue-text" id="orange-text">Hello World!h1>
id
属性吗?pink-text
和blue-text
两个class
,通过为h1
元素添加id
并设置id
的样式,使你的h1
元素变成orange
(橙色)。pink-text
类选择器的上面还是下面是无所谓的,因为id
属性总是具有更高的优先级。<h1 id="orange-text" class="pink-text blue-text" style="color: white">Hello World!h1>
style
元素 CSS 的哪个位置进行声明,id
声明都会覆盖class
声明。in-line style
(内联样式) 使h1
元素变为白色。<style>
body {
background-color: black;
font-family: Monospace;
color: green;
}
#orange-text {
color: orange;
}
.pink-text {
color: pink !important;
}
.blue-text {
color: blue;
}
style>
<h1 id="orange-text" class="pink-text blue-text" style="color: white">Hello World!h1>
style
中定义的所有 CSS。!important
。<style>
body {
background-color: #000000;
}
style>
hex code
。#000000
是黑色,同时也是可能的数值中最小的。<style>
body {
background-color: #FFFFFF;
}
style>
0
是hex code
(十六进制编码)中最小的一个,它代表颜色的完全缺失。F
是hex code
(十六进制编码)中最大的一个,它代表最大可能的亮度。<style>
body {
background-color: #FF0000;
}
style>
Hex code
遵循 red-green-blue(红-绿-蓝),或者叫rgb
格式。hex code
中的前两位表示颜色中红色的数量,第三四位代表绿色的数量,第五六位代表蓝色的数量。F
(最大可能的数值),且在第三、第四、第五和第六位使用0
(最小可能数值)。<style>
body {
background-color: #00FF00;
}
style>
hex code
遵循 red-green-blue(红-绿-蓝),或称为rgb
格式。hex code
中的前两位表示颜色中红色的数量,第三四位代表绿色的数量,第五六位代表蓝色的数量。F
(最大可能的数值),且在其它位使用0
(最小可能数值)。<style>
body {
background-color: #0000FF;
}
style>
F
(最大可能的数值),且在其它位使用0
(最小可能数值)。<style>
body {
background-color: #FFA500;
}
style>
background-color
应用hex code
值#FFA500
以把body
元素的背景色设置为橙色。<style>
body {
background-color: #808080;
}
style>
background-color
应用hex code
值#808080
以把body
元素的背景色设置为灰色。<style>
body {
background-color: #111111;
}
style>
<style>
body {
background-color: #F00;
}
style>
hex code
非常难以记忆。幸运的是,你可以缩短它。hex code
是#FF0000
,可被缩写成#F00
。也就是说,一位表示红,一位表示绿,一位表示蓝。#FF0000
和#F00
解释为完全相同的颜色。<style>
body {
background-color: rgb(0, 0, 0);
}
style>
CSS
中表示颜色的另一个方法是使用rgb
值。rgb(0, 0, 0)
rgb(255, 255, 255)
rgb
,你通过 0 至 255 之间的一个数字来指定每种颜色的亮度,而不是像hex code
那样使用六个十六进制数字。rgb
,和hex code
一样有完全相同数量的可能数值。<style>
body {
background-color: rgb(255, 255, 255);
}
style>
body
元素的背景色从黑色的RGB
值修改为白色的rgb
值rgb(255, 255, 255)
。<style>
body {
background-color: rgb(255, 0, 0);
}
style>
hex code
一样,你可以通过不同数值的组合来表示RGB
中不同的颜色。RGB
顺序模式:第一位表示红色,第二位表示绿色,第三位表示蓝色。<style>
body {
background-color: rgb(0, 255, 0);
}
style>
body
元素的背景色修改为绿色的rgb
值:rgb0, 255, 0)
。<style>
body {
background-color: rgb(0, 0, 255);
}
style>
body
元素的背景色修改为蓝色的RGB
值:rgb(0, 0, 255)
。<style>
body {
background-color: rgb(255, 165, 0);
}
style>
hex code
一样,你可以使用不同数值的组合在RGB
中混合出各种颜色。注:资料整理自FCC中文站