整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

一篇文章带你了解CSS基础知识和基本用法

一篇文章带你了解CSS基础知识和基本用法

相信做过网页的对Css都不是很陌生,它可以帮助我们重铸网页中很多绚丽的特效,尤其是现在Css已经发展3.0版本,很多功能更是丰富多彩,让我们的开发时间不仅大大缩短,而且还可以轻松做出许多华丽的特效,需要注意的是,Css相当于Html的一个美化装置,所以它必须依赖于Html才能发挥作用,那么今天我们就来深入了解下它吧。

一、Css的用法

1.如何使用Css

要想使用Css来增加Html的美观,有三种方式:

1).头部文件中定义

<style>
    标签的Css属性
</style>

2).导入Css文件

创建一个Css文件,里面写入样式,然后导入
<link rel="stylesheet" type="text/Css" href="1.Css">

3).直接在标签中定义

<div style='width:120px;height:60px;background-color:red'></div>Css注释
注:与Html 不同,它的注释方式是:/* Css语句*/

2.Css的选择器

为什么一开始要讲选择器了,因为我们要想精确修改的Html中的某个元素的属性,就必须使用选择器,它可以通过选择器定位到某个元素上然后修改元素的样式。

1).id和class选择器

id选择器必须现在标签中的定义,然后在在头部标签的style标签中用“#”来表示:

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css"> 
     #dv{
       background: red 更改div的背景颜色为红色
     }
</style>
</head>
<body>
<div id='dv'>fd</div> 定义一个id为dv的div
</body>
</Html>

class选择器和id选择器差不多,只不过class选择器用”.“来表示:

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     .dv{
       background: red
     }
</style>
</head>
<body>
<div class='dv'>fd</div>
</body>
</Html>

2).元素选择器

就是指直接声明标签名为选择器,然后更改样式

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     div{
       background: red
     }
</style>
</head>
<body>
<div>fd</div>
</body>
</Html>

或者声明所有标签名为选择器

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
    Html,head,body,div{
       background: red
     }
</style>
</head>
<body>
<div>fd</div>
</body>
</Html>

也可以使用元素加选择器更加精确的定位到该元素

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
   div#er{
       background: red
     }
</style>
</head>
<body>
<div id='df'>fd</div>
<p>fhsjak</p>
<div id='er'>re</div>
</body>
</Html>

3).后代选择器

访问一个元素内的其它元素,可以是元素内的任意元素

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     div span{
       background: red
     }
</style>
</head>
<body>
<div>
<p>erzi
<span>sunzi</span>
</p>
</div>
</body>
</Html>

4).子元素选择器

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     div>p{
       background: red
     }
</style>
</head>
<body>
<div>
<p>erzi
<span>sunzi</span>
</p>
</div>
</body>
</Html>

5).兄弟选择器

位于元素的下一个元素,不在元素内

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     div+big{
       background: red
     }
</style>
</head>
<body>
<div>
<p>erzi
<span>sunzi</span>
</p>
</div>
<big>borther</big>
</body>
</Html>

6).伪类选择器

伪类选择器可分为三类

1)).锚伪类,用于检测鼠标的悬停状态。

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     a:link{    /* 未访问的链接 */
       background: red
     }
     a:visited{    /* 已访问的链接 */
      background: green
     }
     a:hover{  /* 鼠标移动到链接上 */
      background: blue
     }
     a:active{  /* 选定的链接 */
      background: yellow
     }
</style>
</head>
<body>
<a href="https://www.baidu.com">百度</a>
</body>
</Html>

注:a:hover必须置于a:link和a:visited 之后,才是有效的。a:active必须被置于a:hover 之后,才是有效的。

2)). :first-child伪类

匹配第一个匹配到的标签

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
     p:first-child{  匹配第一个p标签
       background: red
     }
     div:first-child{ 匹配第一个div标签
      background: blue
     }
</style>
</head>
<body>
<div id='dv'>
<p class='fd'>fdaf
<div id='gfd'>grerg</div>
</p>
<div class='gf'>fsdjkfhkj
<a href="https://www.baidu.com">baidu</a>
</div>
</div>
</body>
</Html>

3)). :lang伪类

<Html>
<head>
  <title>Css应用</title>
  <style type="text/Css">
  q:lang(hw)  短引用利用伪类
   {
   quotes: "^" "^"
   }
</style>
</head>
<body>
<div id='dv'>
<p>hw<q lang="hw">任性的90后boy</q></p> 必须要用短引用
</div>
</body>
</Html>
<Html>
<head>

总结

这篇文章主要讲述了CSS的基础用法,讲述了如何定义头文件,导入CSS文件,id和class选择器,元素选择器,后代选择器,子元素选择器,兄弟选择器,伪类选择器等等,希望让大家对CSS选择器有个简单的认识和了解。

****看完本文有收获?请转发分享给更多的人****

IT共享之家

入群请在微信后台回复【入群】

想要学习更多,请前往Python爬虫与数据挖掘专用网站:http://pdcfighting.com/

节课将网页的排版框架大致写好。

这节课就来进行更具体的修改和增加所有元素的细节,完成整个网页的编写。

下载所有必须的图片文件

按照上节课的方法,用调试工具分析代码之后,可以下载好必须的图片文件。

关于当中专题的图片,这里只下载了3个,更多的图和文字留给大家自己去完成。

主体排版调整

给table加上边框线的目的是为了方便在开发编写完成之前能够随时观察排版的情况,方便进行调整。

在排版样式基本调整到位之后,就可以删除table的边框了。

来给下面2行的左右分别增加内边距为140px和120px。

修改css代码如下:

刷新页面:

可以看到,下面2行的左右留白出现了,同时第2行和第3行之间有间距,第3行的左右2个td之间也有间距。

虽然第3行的2个td的宽度比例不对,但是先不着急,下面按照次序一个一个元素来调整。

实现最上面一排按钮和链接

最上面一排左边4个元素,右边4个元素,当中留白,因此一共9个td。

将左边4个td和右边4个td的宽度固定,剩余当中的一个td不设置,那么浏览器窗口变化的时候,就不影响到左右的8个td的宽度。

仅仅影响到当中留白的那个td。这是经常使用的一种适应不同浏览器在不同屏幕上不同宽度的一种方法。

修改css代码,增加tda1到tda9的样式。

刷新页面:

可以看到,基本的按钮位置已经到位,可以不需要table的边框了。

删除掉table的边框样式,同时针对最上面一排的整个table的样式table2增加一个下边框的样式,做出一条灰色的分割线出来。

修改css代码如下:

刷新页面:

接下来,逐步添加图片或者按钮。

第一步,添加第一个图片,logo图片。然后增加后面的2个icon图标,这里icon图标要用到一个新的技术,就是css3的content属性。

并且通过自定义字体文件,来显示图标类型的文字。具体内容这里不深入讲解,大家只要了解,通过引入自定义字体文件的方式就可以将字体文件里面的特殊符号图标形状的文字显示在网页上。它看起来是一个图标,但其本质是一个文字。这是这个文字做成图标样子了。比如很多网页中出现的各种箭头图标,很多都是文字。

修改css代码如下:

修改html代码如下:

刷新页面:

可以看到,前面3个图标都模仿编写完成了。

接下来模仿搜索框部分。

搜索框可以用外面套一个div,div的背景色是灰色,然后边角做成圆角的。

当中放一个input标签可以用于输入,input标签是一个新的标签,具体的作用就是让用户可以输入文本的。

后面的课程中会详细讲解的,这里不深入讲解。

然后右边放一个类似前面的图标用i标签并设置content自定义文字编码来实现。

修改css代码如下:

修改html代码如下:

刷新页面:

接下来,修改右侧的4个图标和按钮。

第1个很简单,也是一个文字图标,和前面的下载图标一样。

第2个是一个文字a链接,样式为灰色文字。

第3个也是一个文字a链接,注意边框为圆角边框,颜色为红色。

第4个也是一个文字a链接,底色为红色,边框为圆角,里面包含一个i标签和文字,其中i标签也是一个羽毛笔的图标文字。

修改css代码如下:

修改html代码如下:

刷新页面:

可以看到,通过分析原始网页的相关CSS样式的值,然后模仿写到自己的css文件里面,就能很方便的将网页元素模仿编写出同样类似的效果。当然,模仿后和原来的不是百分之百一样的,这很难做到,因为毕竟每个网页的排版布局是不一样的实现方式。只要掌握了这个方法,通过学习不同的网页的实现方式,很快就能掌握如何编写出自己的网站效果了。

接下来的实现过程,学哥就不再逐个元素的讲解了,直接将修改好的代码呈现给大家。

大家也可以先不要往下看学哥的实现结果,可以自己先尝试将网页剩余的元素全部编写出来。

实现下面左边的专题按钮

修改css代码如下:

修改html代码如下:

刷新页面:

可以看到关于专题这部分已经都做好了。由于专题太多了,而且都是重复的样式,这里就不做出所有的专题了,做出3个作为代表性的例子就足够了。

设置下面右边的td的宽度

现在可以调整下面一行的左右td的宽度了,将右侧的td的宽度固定为218px,左侧的td不固定宽度。

修改css代码如下:

刷新页面:

可以看到右侧td的宽度变大了,左侧的td的宽度变小了。

如果浏览器窗口拉大或者缩小会发生什么情况呢?

如果浏览器窗口放大的话,左侧td的宽度也会自动变大,是由于将table的宽度设置为100%了。

一个table设置为100%,也就是根据浏览器宽度变化而变化,同时一个tr里面的td如果设置了绝对宽度则宽度就不跟随浏览器变化而变化,如果td没有设置宽度,则这些td会根据内容的比例进行分配宽度。

假如一行里面只有一个td没有设置宽度,则剩余的宽度都会分配给这个td,那么浏览器宽度变化的话就只有这个td会改变宽度。

将浏览器窗口拉大一些,效果如下:

可以看到,右侧的td的宽度不变,而左侧的td的宽度变大了。

同时可以看到最上面一排按钮,只有当中留白的那个td也变大了。其它按钮的td并没有变化。

这个设置table宽度自适应浏览器宽度的方法,是一个比较好的控制浏览器宽度变化的方法。大家在编写网页时候要考虑到浏览器宽度的因素。

实现下面左边的文章标题链接

修改css代码如下:

修改html代码如下:

刷新页面:

可以看见第3行的左边部分,关于文章的内容全部做好了。

主要是css代码部分增加比较多。

实现下面右边的大图标按钮和作者排行内容

首先将第3行的左右2个td的垂直方向都靠上对齐:

修改css代码如下:

然后,修改右侧的大图标和作者排行内容。

修改css代码如下:

修改html代码如下:

刷新页面:

可以看到,所有的页面代表性元素全部样式都做成了。

多浏览器测试和多设备测试

到这里,完成了模仿一个真实的网页的全部工作,按照这种模式,可以模仿出各种各样的网页编码。

接下来,要将代码部署到本地服务器上。

然后通过安装不同的浏览器软件,例如IE浏览器,Chrome浏览器,Safari浏览器,Firefox浏览器进行不同浏览器的兼容性测试。

保证在不同的浏览器上看到的网页效果大致都一样,不要出现明显的不协调或不美观之处。

然后还要在不同的设备和操作系统上针对不同的浏览器做更大范围的兼容性测试,这样才能尽最大可能让我们编写的网页程序能够适应更多的计算机环境,呈现最好的效果。

第2章总结

前面通过15小节的内容,讲解了如何编写静态内容网站,如何部署到本地服务器,如何运用浏览器调试工具来学习和模仿编写网站,如何将网站程序部署到云服务器,如何购买一个域名并解析到云服务器,完整的通过2个实例演示了整个网站实现的过程。

下面来回顾一下每节课的内容,并说明重点以及自学是需要注意的地方。

第2.1节,主要是讲解关于网站的技术原理和要做的大概内容。

第2.2节,主要讲一个最最简单的网页代码是什么样子的,让大家有一个最直观的感受,从最简单的开始,html标签,head标签,title标签,body标签,和使用文本编辑器。

第2.3节,从一个网站的设计开始,然后讲解了br标签,b标签,设置网页网页的背景色,关于CSS样式定义以及颜色定义。

第2.4节,开始学习最重要的一个div标签,包括设置背景色,文字颜色,文字大小,尺寸单位,文字字体,文字斜体和加粗。

第2.5节,学习基本的CSS样式之后,学习将CSS样式和网页内容进行分离,更方便开发。

第2.6节,网页显示中很重要的宽度,高度,内边距,外边距,边框,可以将网页元素修饰的更美观大气。

第2.7节,在学会使用div进行页面排版布局之后,再学习使用table表格来对网页进行排版,掌握td的用法,包括设置内边距和字体,以及边框。

第2.8节,学习对table表格进行td合并以及设置排版样式,说明特定元素通过id设置样式,以及说明元素标签嵌套关系和顺序关系。

第2.9节,学习设置背景图片,以及img标签显示图片的方法,以及一些HTML和CSS代码注释以及缩进的格式。

第2.10节,学习如何让网页进行迁移,包括文字链接和图片链接,以及类似按钮的链接。

第2.11节,网页基本编写完成之后,将网页部署到本地一个Web服务器,通过局域网可以访问。

第2.12节,将网站部署到云服务器上,这样可以通过互联网访问网站页面。

第2.13节,创建好域名之后,将域名解析到云服务器,这样通过互联网可以访问域名就能看到网站页面了。

第2.14节,学习分析一个已经存在的网站,并进行设计规划,进行模仿编写网页。

第2.15节,一边分析网页,一边开始模仿编写网页,一个元素一个元素的编写,最终完整模仿整个网页。

通过整个15节课程,一步一步实现2个代表性网站页面,掌握如果使用HTML加CSS代码来编写实现静态内容网站。

为将来实现动态内容网站打下一个坚实的基础。

第3章简介

第2章的内容是很多互联网编程技术的基础。同样的,第3章的内容也是互联网编程技术的基础。

第3章开始讲解JavaScript编程技术,学习掌握如何通过代码实现改变网页显示元素的技术。

第3章以实现一个连连看网页游戏作为主线,穿插讲解关于JavaScript技术的方方面面,让大家在第3章结束之后,掌握好使用JavaScript技术进行交互式网页开发的技能。

往期教程

由于学哥的教程是系列教程,前后关联极强,请大家查看历史消息。

本文介绍的是一个非常漂亮的在线古典颜色手册,为程序员和设计师提供中国古典颜色设计提供色彩和灵感,特别是对于一些古典项目非常适合使用它,有了它能为你的网站或者应用提供卓然的气质,对热爱古风的程序员和设计师尤为有用!



Github

https://github.com/zerosoul/chinese-colors



特性

  • 使用 React 构建
  • 支持 PWA


  • 适配移动端展现 (Mobile First)


  • 颜色选中高亮
  • 颜色分类
  • 可复制 HEX
  • 可收藏喜欢的颜色
  • 搭配显示诗词
  • 可生成壁纸/图片卡片,屏幕多大,截图就有多大


涉及技术栈和其他开源项目

  • create-react-app: 大家都在用的 react 项目构建架子
  • react: 最流行的前端 UI 构建语言
  • styled-components: react 中 css 解决方案,CSS-IN-JS 最佳实践
  • eslint + prettier: 为了更好地编码
  • husky + commitlint: 为了更好地 GIT 提交
  • html2canvas
  • pinyin: 汉字转拼音
  • react-copy-to-clipboard: 开启复制功能
  • iconfont.cn: 阿里系的图标库,很丰富,很方便
  • https://www.transparenttextures.com/: 非常好看的纹理背景图
  • 今日诗词

本地开发

常规操作:

克隆到本地:git clone https://github.com/zerosoul/chinese-colors.git
初始化:cd chinese-colors && npm install
运行:npm run start
访问: http://localhost:8099/

截图欣赏

  • 苍色

本类颜色包括苍色、苍翠色、苍黄色、苍青色、苍黑色、苍白色(以下按顺序截图,后续相同)


红色包括粉红色、妃色、品红色、桃红色、海棠红、石榴红、樱桃红、银红色、大红色、绛紫等几十种颜色,此处展示这十色,感兴趣的直达手册


  • 蓝色

蓝色有靛蓝、靛青、碧蓝、蔚蓝、宝蓝、蓝灰、藏青藏蓝等


水色、水红色、水绿色、水蓝色、淡青色、湖蓝、湖绿


  • 黑色

玄色、玄青、乌色、乌黑、漆黑、、墨色、墨灰色、黑色、缁色等


赤金、金色、银白色、老银、乌金、铜绿

总结

以上有你喜欢的颜色么,中国古典颜色确实很漂亮,不管是你的网站主题还是应用主题,配上中国风会很美观、耐看、有气质,有你喜欢的颜色么?

在线体验地址

https://colors.ichuantong.cn/