CSS实例中有很多CSS的例子,可以学习。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
body
{background-color:#d0e4fe;
}
h1
{color:orange;text-align:center;
}
p
{font-family:"Times New Roman";font-size:20px;
}
</style>
</head><body><h1>CSS 实例!</h1>
<p>这是一个段落。</p></body>
</html>

代码大意是:

两行字所用的标签分别使用了css中的定义(就是style里面的),

CSS的结构是选择器和声明

########################################################################

CSS Id 和 Class

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p.center
{text-align:center;
}
</style>
</head><body>
<h1 class="center">这个标题不受影响</h1>
<p class="center">这个段落居中对齐。</p>
</body>
</html>

########################################################################

CSS 创建

提到了样式表(.css文件),但是教程里面没有给出具体的完整案例

########################################################################

CSS背景

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
body
{background:#ffffff url('img_tree.png') no-repeat right top;margin-right:200px;
}
</style></head><body>
<h1>Hello World!</h1>
<p>背景图片只显示一次,但它位置离文本比较远。</p>
<p>在这个例子中我们添加了一个右边距,所以背景图像不会打扰到文本。</p>
</body></html>

效果如下:

########################################################################

css文本格式:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
a {text-decoration:none;}
</style>
</head><body>
<p>链接到: <a href="//www.runoob.com/">runoob.com</a></p>
</body></html>

效果如下:

########################################################################

CSS Fonts(字体)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
body {font-size:100%;}
h1 {font-size:2.5em;}
h2 {font-size:1.875em;}
p {font-size:0.875em;}
</style>
</head>
<body><h1>This is heading 1</h1>
<h2>This is heading 2</h2>
<p>This is a paragraph.</p>
<p>在所有浏览器中,可以显示相同的文本大小,并允许所有浏览器缩放文本的大小。</p></body>

########################################################################

CSS 链接

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
a:link {color:#000000;}      /* 未访问链接*/
a:visited {color:#00FF00;}  /* 已访问链接 */
a:hover {color:#FF00FF;}  /* 鼠标移动到链接上 */
a:active {color:#0000FF;}  /* 鼠标点击时 */
</style>
</head>
<body>
<p><b><a href="/css/" target="_blank">这是一个链接</a></b></p>
<p><b>注意:</b> a:hover 必须在 a:link 和 a:visited 之后,需要严格按顺序才能看到效果。</p>
<p><b>注意:</b> a:active 必须在 a:hover 之后。</p>
</body>
</html>

这个代码的意思是:

鼠标点击和覆盖文字时,会有不同的颜色。

########################################################################

列表样式

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
ul
{list-style-type:none;padding:0px;margin:0px;
}
ul li
{background-image:url(sqpurple.gif);background-repeat:no-repeat;background-position:0px 5px; padding-left:14px;
}
</style>
</head><body>
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Coca Cola</li>
</ul>
</body></html>

效果如下:

代码大意是,代码下方的文字调用了上面定义好的li

########################################################################

CSS 表格

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
table, td, th
{border:1px solid black;
}
td
{padding:15px;
}
</style>
</head><body>
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Savings</th>
</tr>
<tr>
<td>Peter</td>
<td>Griffin</td>
<td>$100</td>
</tr>
<tr>
<td>Lois</td>
<td>Griffin</td>
<td>$150</td>
</tr>
<tr>
<td>Joe</td>
<td>Swanson</td>
<td>$300</td>
</tr>
<tr>
<td>Cleveland</td>
<td>Brown</td>
<td>$250</td>
</tr>
</table>
</body>
</html>

CSS 表格

代码大意是:

tr是一行

td是一列

########################################################################

CSS 盒子模型

盒子模型(Box Model):

例子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
div.ex
{
width:220px;
padding:10px;
border:5px solid gray;
margin:0px;
}
</style>
</head><body><img src="250x250px.gif" width="250" height="250" /><div class="ex">上面的图片是250 px宽。
这个元素的总宽度也是250 px。</div></body>
</html>

效果如下

代码中的class就是C++中的例化(举个例子)。

代码大意对于上面效果图中的下方使用盒子模型,

盒子模型的样式被定义在div.ex中

###################################################################################

CSS 边框

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p.one
{border-style:solid;border-width:5px;
}
p.two
{border-style:solid;border-width:medium;
}
p.three
{border-style:solid;border-width:1px;
}
</style>
</head><body>
<p class="one">一些文本。</p>
<p class="two">一些文本。</p>
<p class="three">一些文本。</p>
<p><b>注意:</b> "border-width" 属性 如果单独使用则不起作用。要先使用 "border-style" 属性来设置边框。</p>
</body></html>

###################################################################################

CSS 轮廓(outline)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p {border:1px solid red;}
p.dotted {outline-style:dotted;}
p.dashed {outline-style:dashed;}
p.solid {outline-style:solid;}
p.double {outline-style:double;}
p.groove {outline-style:groove;}
p.ridge {outline-style:ridge;}
p.inset {outline-style:inset;}
p.outset {outline-style:outset;}
</style>
</head>
<body><p class="dotted">点线轮廓</p>
<p class="dashed">虚线轮廓</p>
<p class="solid">实线轮廓</p>
<p class="double">双线轮廓</p>
<p class="groove">凹槽轮廓</p>
<p class="ridge">垄状轮廓</p>
<p class="inset">嵌入轮廓</p>
<p class="outset">外凸轮廓</p>
<p><b>注意:</b> 如果只有一个 !DOCTYPE 指定 IE 8 支持 outline 属性。</p>
</body>
</html>

代码用法和上面的"CSS边框类似"

###################################################################################

CSS margin(外边距)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p
{background-color:yellow;
}
p.margin
{margin-top:100px;margin-bottom:100px;margin-right:50px;margin-left:50px;
}
</style>
</head><body>
<p>这是一个没有指定边距大小的段落。</p>
<p class="margin">这是一个指定边距大小的段落。</p>
</body></html>

用法和上面的差不多。

###################################################################################

CSS padding(填充)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p
{background-color:yellow;
}
p.padding
{padding-top:25px;padding-bottom:25px;padding-right:50px;padding-left:50px;
}
</style>
</head><body>
<p>这是一个没有指定填充边距的段落。</p>
<p class="padding">这是一个指定填充边距的段落。</p>
</body></html>

###################################################################################

CSS 分组 和 嵌套 选择器

分组代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
h1,h2,p
{color:green;
}
</style>
</head><body>
<h1>Hello World!</h1>
<h2>Smaller heading!</h2>
<p>This is a paragraph.</p>
</body>
</html>

嵌套代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p
{color:blue;text-align:center;
}
.marked
{background-color:red;
}
.marked p
{color:white;
}
p.marked{text-decoration:underline;
}
</style>
</head><body>
<p>这个段落是蓝色文本,居中对齐。</p>
<div class="marked">
<p>这个段落不是蓝色文本。</p>
</div><p>所有 class="marked"元素内的 p 元素指定一个样式,但有不同的文本颜色。</p><p class="marked">带下划线的 p 段落。</p>
</body>
</html>

所谓的嵌套的意思就是,这个<p>是在<body>内部还是<div>内部亦或是带class的。

和外层的标签组合起来就有了嵌套的味道。

###################################################################################

CSS尺寸

使用百分比来设置元素的最大宽度-代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
html {height:100%;}
body {height:100%;}
img.normal {height:auto;}
img.big {height:50%;}
img.small {height:10%;}
</style>
</head><body>
<img class="normal" src="logocss.gif" width="95" height="84" /><br>
<img class="big" src="logocss.gif" width="95" height="84" /><br>
<img class="small" src="logocss.gif" width="95" height="84" />
</body>
</html>

###################################################################################

CSS Display(显示) 与 Visibility(可见性)

这一节提到了块和内联元素

内联元素可以理解为不能直接设置宽度和高度元素,比如span,你为他设置宽度和高度没有效果,除非你把它设置成块级元素。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
li{display:inline;}
</style>
</head>
<body><p>链接列表水平显示:</p><ul>
<li><a href="/html/" target="_blank">HTML</a></li>
<li><a href="/css/" target="_blank">CSS</a></li>
<li><a href="/js/" target="_blank">JavaScript</a></li>
<li><a href="/xml/" target="_blank">XML</a></li>
</ul></body>
</html>

效果如下:

然后是块元素

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
span
{display:block;
}
</style>
</head>
<body><h2>Nirvana</h2>
<span>Record: MTV Unplugged in New York</span>
<span>Year: 1993</span>
<h2>Radiohead</h2>
<span>Record: OK Computer</span>
<span>Year: 1997</span></body>
</html>

上面的两份代码中,内联还是块取决于display后面的是block还是inline

然后下面的<span><\span>调用了上面的<body><\body>中定义的span

###################################################################################

CSS Position(定位)

所谓的定位其实就是元素在页面中的坐标。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
h2
{position:absolute;left:100px;top:150px;
}
</style>
</head><body>
<h2>这是一个绝对定位了的标题</h2>
<p>用绝对定位,一个元素可以放在页面上的任何位置。标题下面放置距离左边的页面100 px和距离页面的顶部150 px的元素。.</p>
</body></html>

###################################################################################

CSS 布局 - Overflow

注意:overflow 属性只工作于指定高度的块元素上。

注意: 在 OS X Lion ( Mac 系统) 系统上,滚动条默认是隐藏的,使用的时候才会显示 (设置 "overflow:scroll" 也是一样的)。

这个东西的作用就是文本太长的情况下,怎么显示"太长"的那一部分

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
div {background-color: #eee;width: 200px;height: 200px;border: 1px dotted black;overflow:scroll;
}
</style>
</head>
<body><div id="overflowTest">
<p>这里的文本内容会溢出元素框。</p>
<p>这里的文本内容会溢出元素框。</p>
<p>这里的文本内容会溢出元素框。</p>
</div></body>
</html>

其实就是修改下scroll的部分,然后就可以有“滚动条”“隐藏”之类的效果。

###################################################################################

CSS Float(浮动)

浮动的意思讲人话就是靠左还是靠右

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
.thumbnail
{float:left;width:150px;height:90px;margin:5px;
}
</style>
</head><body>
<h3>图片库</h3>
<p>试着调整窗口,看看当图片没有足够的空间会发生什么。</p>
<img class="thumbnail" src="/images/klematis_small.jpg" width="107" height="90">
<img class="thumbnail" src="/images/klematis2_small.jpg" width="107" height="80">
<img class="thumbnail" src="/images/klematis3_small.jpg" width="116" height="90">
<img class="thumbnail" src="/images/klematis4_small.jpg" width="120" height="90">
<img class="thumbnail" src="/images/klematis_small.jpg" width="107" height="90">
<img class="thumbnail" src="/images/klematis2_small.jpg" width="107" height="80">
<img class="thumbnail" src="/images/klematis3_small.jpg" width="116" height="90">
<img class="thumbnail" src="/images/klematis4_small.jpg" width="120" height="90">
</body>
</html>

###################################################################################

CSS 布局 - 水平 & 垂直对齐

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
img {display: block;margin: 0 auto;
}
</style>
</head>
<body><h2>图片居中对齐</h2>
<p>要让图片居中对齐, 可以使用 margin: auto; 并将它放到块元素中:</p><img src="//static.runoob.com/images/mix/paris.jpg" alt="Paris" style="width:40%"></body>
</html>

###################################################################################

CSS 组合选择符

后续选择器

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
div~p
{background-color:yellow;
}
</style>
</head>
<body><p>之前段落,不会添加背景颜色。</p>
<div>
<p>段落 1。 在 div 中。</p>
<p>段落 2。 在 div 中。</p>
</div><p>段落 3。不在 div 中。</p>
<p>段落 4。不在 div 中。</p></body>
</html>

意思是让<div></div>作为边界,然后边界之外的染成yellow色彩。

###################################################################################

CSS 伪类(Pseudo-classes)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p:first-child i
{color:blue;
}
</style>
</head><body>
<p>I am a <i>strong</i> man. I am a <i>strong</i> man.</p>
<p>I am a <i>strong</i> man. I am a <i>strong</i> man.</p>
<p><b>注意:</b> 当:first-child 作用于 IE8 及更早版本的浏览器, DOCTYPE 必须已经定义.</p>
</body>
</html>

使用的时候没用涉及class

##################################################################################

CSS伪元素

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
p:first-letter
{color:#ff0000;font-size:xx-large;
}
p:first-line
{color:#0000ff;font-variant:small-caps;
}
</style>
</head><body>
<p>你可以结合使用"first-line"和"first-letter"伪元素向文本的首行和首字母
设置特殊样式。</p>
</body>
</html>

##################################################################################

CSS 导航栏

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
<ul>
<li><a href="#home">主页</a></li>
<li><a href="#news">新闻</a></li>
<li><a href="#contact">联系</a></li>
<li><a href="#about">关于</a></li>
</ul><p>注意:这里我们用 href="#"作为测试连接。但在一个真正的 web 站点上需要真实的 url。</p></body>
</html>

其实就是一堆链接

##################################################################################

下拉菜单

<!DOCTYPE html>
<html>
<head>
<title>下拉菜单实例|菜鸟教程(runoob.com)</title>
<meta charset="utf-8">
<style>
.dropdown {position: relative;display: inline-block;
}
.dropdown-content {display: none;position: absolute;background-color: #f9f9f9;min-width: 160px;box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);padding: 12px 16px;
}
.dropdown:hover .dropdown-content {display: block;
}
</style>
</head>
<body><h2>鼠标移动后出现下拉菜单</h2>
<p>将鼠标移动到指定元素上就能看到下拉菜单。</p><div class="dropdown"><span>鼠标移动到我这!</span><div class="dropdown-content"><p>菜鸟教程</p><p>www.runoob.com</p></div>
</div></body>
</html>

效果是:

上面的最下方的两个<p></p>指的是下拉菜单的具体内容

下半部分代码调用了上面定义的dropdown-content

##################################################################################

CSS 提示工具(Tooltip)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<style>
.tooltip {position: relative;display: inline-block;border-bottom: 10px dotted green;
}.tooltip .tooltiptext {visibility: hidden;width: 120px;background-color: black;color: #fff;text-align: center;border-radius: 6px;padding: 5px 0;position: absolute;z-index: 1;top: -5px;left: 110%;
}.tooltip .tooltiptext::after {content: "";position: absolute;top: 50%;right: 100%;margin-top: -5px;border-width: 5px;border-style: solid;border-color: transparent red transparent transparent;
}.tooltip:hover .tooltiptext {visibility: visible;
}
</style>
<body style="text-align:center;"><h2>右侧提示框/左侧箭头</h2><div class="tooltip">鼠标移动到我这<span class="tooltiptext">提示文本</span>
</div></body>
</html>

代码中有4处tooltip,下面来分别解释。

.tooltip开关,如果这个删除,那么提示功能消失,同时设置下划线颜色(绿色)

.tooltip .tooltiptext 设置提示文本,里面的如果改为visible,那么就会直接出现提示文本,不会隐藏

.tooltip .tooltiptext::after设置箭头的颜色和位置

.tooltip:hover .tooltiptext定义如何触发显示"提示文本"

效果如下:

###################################################################################

CSS图片廊

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
div.img {margin: 5px;border: 1px solid #ccc;float: left;width: 180px;
}div.img:hover {border: 10px solid #777;
}div.img img {width: 100%;height: auto;
}div.desc {padding: 15px;text-align: center;
}
</style>
</head>
<body><div class="responsive"><div class="img"><a target="_blank" href="//static.runoob.com/images/demo/demo1.jpg"><img src="//static.runoob.com/images/demo/demo1.jpg" alt="图片文本描述" width="300" height="200"></a><div class="desc">1</div></div>
</div><div class="responsive"><div class="img"><a target="_blank" href="//static.runoob.com/images/demo/demo2.jpg"><img src="//static.runoob.com/images/demo/demo2.jpg" alt="图片文本描述" width="300" height="200"></a><div class="desc">2</div></div>
</div><div class="responsive"><div class="img"><a target="_blank" href="//static.runoob.com/images/demo/demo3.jpg"><img src="//static.runoob.com/images/demo/demo3.jpg" alt="图片文本描述" width="300" height="200"></a><div class="desc">3</div></div>
</div><div class="responsive"><div class="img"><a target="_blank" href="//static.runoob.com/images/demo/demo4.jpg"><img src="//static.runoob.com/images/demo/demo4.jpg" alt="图片文本描述" width="300" height="200"></a><div class="desc">4</div></div>
</div></body>
</html>

div.img:hover 鼠标移动到图片上面的时候的灰色边框厚度

div.desc文字边框的长度

div.img和div.img img到底啥区别?

这里注意,因为div是块属性,所以默认div显示图片的话一行只能显示一张图片。

为了让一行能显示多张图片,关键代码是:

float: left; 

width: 180px;

然后,为了文字绑定图片,需要<div class="img">将他们打包

所以总的代码思路是:

<div class="img">把文字和图片打包,由于其中的div是块属性的,一行只能放一张图片(占据所有行宽),所以需要float属性来修补。这里面<div class="img">对应的是div.img,div.img img对应的是

<img src="//static.runoob.com/images/demo/demo1.jpg" alt="图片文本描述" width="300" height="200">

div.img和div.img img中都有width,他们是相乘的关系

div.img是把"文字和图片"打包后的整体"看作"一张图片。
div.img img是设定这个"图片"里面的图片。

搞这么复杂的目的就是为了。。。页面的一行能显示多张"图片"(=图片+文字 打包)。。。。

效果如下:

###################################################################################

CSS图像透明/不透明

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
img
{opacity:0.4;filter:alpha(opacity=40); /* 适用 IE8 及其更早版本 */
}
img:hover
{opacity:1.0;filter:alpha(opacity=100); /* 适用 IE8 及其更早版本 */
}
</style>
</head>
<body><h1>图片透明度</h1>
<p>opacity 属性通常与 :hover 选择器一起使用,在鼠标移动到图片上后改变图片的透明度:</p>
<img src="klematis.jpg" width="150" height="113" alt="klematis">
<img src="/images/klematis2.jpg" width="150" height="113" alt="klematis"><p><b>注意:</b>在 IE 中必须声明 &lt;!DOCTYPE&gt; 才能保证 :hover 选择器能够有效。</p>
</body>
</html>

下面是效果图,鼠标移动上去才会完全透明。

###################################################################################

CSS媒体类型

这节的例子举得不是特别好

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
@media screen
{p.test {font-family:verdana,sans-serif;font-size:14px;}
}
@media print
{p.test {font-family:times,serif;font-size:10px;}
}
@media screen,print
{p.test {font-weight:bold;}
}
</style>
</head><body>
<p class="test">菜鸟教程 -- 学的不仅是技术,更是梦想!!!</p>
</body>
</html>

效果如下:

###################################################################################

属性和值的选择器 - 多值

下面是包含指定值的title属性的元素样式的例子,使用(~)分隔属性和值:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
[title~=hello]
{color:blue;
}
</style>
</head><body>
<h2>将适用:</h2>
<h1 title="hello world">Hello world</h1>
<p title="student hello">Hello CSS students!</p>
<hr>
<h2>将不适用:</h2>
<p title="student">Hi CSS students!</p>
</body>
</html>

代码大意是:

包含hello的就染成蓝色。

************************

接下来是表单的例子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
input[type="text"]
{width:150px;display:block;margin-bottom:10px;background-color:yellow;
}
input[type="button"]
{width:120px;margin-left:35px;display:block;
}
</style>
</head>
<body><form name="input" action="demo-form.php" method="get">
Firstname:<input type="text" name="fname" value="Peter" size="20">
Lastname:<input type="text" name="lname" value="Griffin" size="20">
<input type="button" value="Example Button"></form>
</body>
</html>

###################################################################################

CSS 表单(这里重点学习其中几个重要的例子)

带动画的搜索框

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
input[type=text] {width: 130px;box-sizing: border-box;border: 4px solid #ccc;border-radius: 4px;font-size: 16px;background-color: white;background-image: url('https://static.runoob.com/images/mix/searchicon.png');background-position: 10px 10px; background-repeat: no-repeat;padding: 12px 20px 12px 40px;-webkit-transition: width 0.4s ease-in-out;transition: width 0.4s ease-in-out;
}input[type=text]:focus {width: 100%;
}
</style>
</head>
<body><p>搜索输入框带动画:</p><form><input type="text" name="search" placeholder="搜索..">
</form></body>
</html>

下拉菜单(select)样式

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
select {width: 100%;padding: 16px 20px;border: none;border-radius: 4px;background-color: #f1f1f1;
}
</style>
</head>
<body><p>下拉菜单</p><form><select id="country" name="country"><option value="au">Australia</option><option value="ca">Canada</option><option value="usa">USA</option></select>
</form></body>
</html>

响应式表单

<!DOCTYPE html>
<html>
<head><style>
* {box-sizing: border-box;
}input[type=text], select, textarea {width: 100%;padding: 20px;border: 1px solid #ccc;border-radius: 4px;resize: vertical;
}
/*设置输入框的尺寸*/label {padding: 12px 12px 12px 0;display: inline-block;
}
/*这个label就是指代First Name的右侧、下侧等等之类的距离*/input[type=submit] {background-color: #4CAF50;color: white;padding: 12px 20px;border: none;border-radius: 4px;cursor: pointer;float: right;
}
/*submit按钮颜色*/input[type=submit]:hover {background-color: #45a049;
}
/*这里是鼠标移动到submit按钮上的时候,会变颜色*/.container {border-radius: 5px;background-color: #f2f2f2;padding: 20px;
}
/*整个表格的属性设置*/.col-25 {float: left;width: 25%;margin-top: 6px;
}.col-75 {float: left;width: 75%;margin-top: 6px;
}
/*col-25设定输入框左侧的文字*/
/*col-75设定输入框*/
/* 清除浮动 */
.row:after {content: "";display: table;clear: both;
}
/*让submit按钮包含在背景范围内*//*下面这个代码的意思是,如果屏幕被放大,那么First Name和输入框就会是"上下布局",不再是"左右布局"*/
/* 响应式布局 layout - 在屏幕宽度小于 600px 时, 设置为上下堆叠元素 */
@media screen and (max-width: 600px) {.col-25, .col-75, input[type=submit] {width: 100%;margin-top: 0;}
}
</style>
</head>
<body><h2>响应式表单</h2>
<p>响应式表带可以根据浏览器窗口的大小重新布局各个元素,我们可以通过重置浏览器窗口大小来查看效果:</p><div class="container"><form action="/action_page.php"><div class="row"><div class="col-25"><label for="fname">First Name</label></div><div class="col-75"><input type="text" id="fname" name="firstname" placeholder="Your name.."></div></div><div class="row"><div class="col-25"><label for="lname">Last Name</label></div><div class="col-75"><input type="text" id="lname" name="lastname" placeholder="Your last name.."></div></div><div class="row"><div class="col-25"><label for="country">Country</label></div><div class="col-75"><select id="country" name="country"><option value="australia">Australia</option><option value="canada">Canada</option><option value="usa">USA</option></select></div></div><div class="row"><div class="col-25"><label for="subject">Subject</label></div><div class="col-75"><textarea id="subject" name="subject" placeholder="Write something.." style="height:200px"></textarea></div></div><div class="row"><input type="submit" value="Submit"></div></form>
</div></body>
</html>

其中

@media screen and (max-width: 600px) {.col-25, .col-75, input[type=submit] {width: 100%;margin-top: 0;}
}

的意思是,First Name和下面的輸入框是上下排列的,而原先是左右排列的

###################################################################################

CSS计数器

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
ol {counter-reset: section;list-style-type: none;
}li::before {counter-increment: section;content: counters(section,".") " ";
}
</style>
</head>
<body>
----------------------------------------------------
<ol><li>item1</li><li>item2   <ol><li>item3</li><li>item4</li><li>item5<ol><li>item6</li><li>item7</li><li>item8</li></ol></li><li>item9</li></ol></li><li>item10</li><li>item11</li>
</ol><ol><li>item12</li><li>item13</li>
</ol><p><b>注意:</b> IE8 需要指定 !DOCTYPE 才可以支持该属性。</p></body>
</html>

效果如下:

所谓的计数器是针对文章标题左侧的序号的。

技巧是</li>替换为<ol>,然后就可以产生二级、三级小标题的序号。

###################################################################################

CSS网页布局-响应式网页布局

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
* {box-sizing: border-box;
}body {font-family: Arial;padding: 10px;background: #f1f1f1;
}/* 头部标题 */
.header {padding: 30px;text-align: center;background: white;
}.header h1 {font-size: 50px;
}/* 导航条 */
.topnav {overflow: hidden;background-color: #333;
}/* 导航条链接 */
.topnav a {float: left;display: block;color: #f2f2f2;text-align: center;padding: 14px 16px;text-decoration: none;
}/* 链接颜色修改 */
.topnav a:hover {background-color: #ddd;color: black;
}/* 创建两列 */
/* Left column */
.leftcolumn {   float: left;width: 75%;
}/* 右侧栏 */
.rightcolumn {float: left;width: 25%;background-color: #f1f1f1;padding-left: 20px;
}/* 图像部分 */
.fakeimg {background-color: #aaa;width: 100%;padding: 20px;
}/* 文章卡片效果 */
.card {background-color: white;padding: 20px;margin-top: 20px;
}/* 列后面清除浮动 */
.row:after {content: "";display: table;clear: both;
}/* 底部 */
.footer {padding: 20px;text-align: center;background: #ddd;margin-top: 20px;
}/* 响应式布局 - 屏幕尺寸小于 800px 时,两列布局改为上下布局 */
@media screen and (max-width: 800px) {.leftcolumn, .rightcolumn {   width: 100%;padding: 0;}
}/* 响应式布局 -屏幕尺寸小于 400px 时,导航等布局改为上下布局 */
@media screen and (max-width: 400px) {.topnav a {float: none;width: 100%;}
}
</style>
</head>
<body><div class="header"><h1>我的网页</h1><p>重置浏览器大小查看效果。</p>
</div><div class="topnav"><a href="#">链接</a><a href="#">链接</a><a href="#">链接</a><a href="#" style="float:right">链接</a>
</div><div class="row"><div class="leftcolumn"><div class="card"><h2>文章标题</h2><h5>2019 年 4 月 17日</h5><div class="fakeimg" style="height:200px;">图片</div><p>一些文本...</p><p>菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!</p></div><div class="card"><h2>文章标题</h2><h5>2019 年 4 月 17日</h5><div class="fakeimg" style="height:200px;">图片</div><p>一些文本...</p><p>菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程 - 学的不仅是技术,更是梦想!</p></div></div><div class="rightcolumn"><div class="card"><h2>关于我</h2><div class="fakeimg" style="height:100px;">图片</div><p>关于我的一些信息..</p></div><div class="card"><h3>热门文章</h3><div class="fakeimg"><p>图片</p></div><div class="fakeimg"><p>图片</p></div><div class="fakeimg"><p>图片</p></div></div><div class="card"><h3>关注我</h3><p>一些文本...</p></div></div>
</div><div class="footer"><h2>底部区域</h2>
</div></body>
</html>

对于这种响应式布局,都会有@之类的语句,为的是响应用户的放大缩小操作时,对页面上显示的内容做适当的调整。

菜鸟教程-css学习笔记相关推荐

  1. python scrapy菜鸟教程_scrapy学习笔记(一)快速入门

    安装Scrapy Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv.json等文件中. 首先我们安装Scrapy. pip install sc ...

  2. 菜鸟教程-css3学习笔记

    学习链接是: https://www.runoob.com/css3/css3-tutorial.html ############################################## ...

  3. Java菜鸟教程系列 学习笔记总结 基础篇(1)

    基础语法 本博客通过学习菜鸟教程Java专栏,并整理得出的Java基础知识. 命名规范 1.项目名全部小写 2.包名全部小写 3.类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写.如: ...

  4. 菜鸟教程-Javascript学习笔记-JS函数之前

    教程连接是: https://www.runoob.com/js/js-tutorial.html DOM(一些操作页面元素的方法) BOM(一些操作浏览器的方法) ################# ...

  5. 菜鸟教程PHP学习笔记(不定期更新)

    NO.1-PHP表单验证 代码详细注释版 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8&qu ...

  6. 菜鸟教程Cpp学习笔记

    一.面向对象开发的特征 面向对象开发的四大特性: 封装 抽象 继承 多态 二.C++ 中的类型限定符 限定符 含义 const const 类型的对象在程序执行期间不能被修改改变. volatile ...

  7. Java菜鸟教程系列 学习笔记总结 面向对象篇(1)

    继承 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为. 继承的特性 子类拥有父类非 private 的属性.方法. 子类 ...

  8. 《CSS菜鸟教程》学习

    学习资料:<CSS菜鸟教程> 学习目标:熟悉CSS语法即可 CSS简介 什么是CSS? CSS(Cascading Style Sheets)层叠样式表 CSS定义了如何显示HTML元素 ...

  9. HTML/CSS学习笔记03【CSS概述、CSS选择器、CSS属性、CSS案例-注册页面】

    w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...

最新文章

  1. java rtmp_搭建rtmp直播流服务之2:使用java实现ffmpeg命令接口化调用(用java执行ffmpeg命令)...
  2. super().__init__()理解(三)
  3. groovy定义变量获取当前时间_IDEA不愧为神器,结合Groovy脚本,简直无敌!
  4. for-each 循环原理
  5. Ajax技术简单入门
  6. mysql函数使用场景_mysql的函数和存储过程的比较,以及在实际场景中的使用案例...
  7. 进阶篇:6)样机制作与验证
  8. MyBatis由浅入深学习总结之二:MyBatis解决Java实体类和数据库表字段不一致方法总结
  9. Asp.net网站的ClickOnce自动部署(3)-虚拟目录的配置
  10. mac nginx 安装及PHP配置
  11. PyTorch学习—23.PyTorch的基本使用
  12. 爬虫实例5 爬取58房源信息(xpath)
  13. h5抽奖大转盘开发笔记小结,涉及到的知识点和包资源
  14. 多项式求值秦九韶算法
  15. 蓝屏代码及其解决方案
  16. 【Kepware与S71500连接 返回协议错误0X81解决方案】
  17. 【奈茶君】STM32F407驱动WS2812
  18. 关于更改Python的默认工作路径
  19. arm体系结构总结笔记10-arm汇编
  20. 大数据分析软技能有哪些

热门文章

  1. LeetCode:Add Two Numbers
  2. Flex4/Flash多文件上传(带进度条)实例分享
  3. Spring中的Ibatis之SqlMapClientDaoSupport
  4. Microsoft Enterprise Library---解读Configuration之元数据
  5. iview table后端分页 多选 翻页选中回显
  6. 为什么多对多关系需要建立中间表_中间表是什么?和报表有什么关系?会带来怎样的问题?又如何解决?...
  7. w3c的ajax操作函数,关于ajax的使用方法_例题、ajax的数据处理
  8. CSS3动画---移动端上下固定高度,中间自适应
  9. IE10,IE9透明元素无法点击
  10. linux启动Spark本地模式(Local模式)