软件设计之CSS

软件设计之CSS

【狂神说Java】CSS3最新教程快速入门通俗易懂

学习内容:

软件开发技能点参照:软件开发,小白变大佬,这套学习路线让你少走弯路是认真的,欢迎讨论
软件开发技能点顺序参照:Java学习完整路线,强烈建议收藏转发

  1. 什么是CSS
  2. 四种CSS导入方式
  3. 选择器
  4. 盒子模型

1、什么是CSS

Cascading Style Sheet 层叠级联样式表

CSS:表现(美化网页)

字体、颜色、边距、稿库、背景图片、网页浮动...

选择器规范

可以创建.css文件,在里面添加选择器代码,对样式进行设计

html 复制代码
<!--规范
    选择器{
          声明1;
          声明2;
        }-->

2、四种CSS导入方式

优先级: 行内样式最优

其次 内部样式与外部样式的优先级以就近原则为准
就近原则:其二者谁在代码中离应用标签更近,优先级就更高

html 复制代码
<head>
  <meta charset="UTF-8">
  <title>Example</title>
<!--  内部样式-->
  <style>
    h1{
      color: brown;
    }
  </style>
<!--  外部样式-->
  <link rel="stylesheet" href="css/test.css">
</head>
<body>
<!--行内样式:在标签元素中,编写一个style属性,编写样式即可-->
<h1 style="color: red">你好</h1>
</body>

外部样式的两种写法

@import是CSS 2.1特有

html 复制代码
<!--  导入式-->
  <style>
    @import "css/test.css";
  </style>
<!--  链接式-->
  <link rel="stylesheet" href="css/test.css">
  

3、选择器

作用:选择页面上的某一个或者某一类元素

基本选择器

优先级: id选择器>class选择器>标签选择器

(1)标签选择器

标签选择器,会选择到页面上所有的这个标签的元素

html 复制代码
  <style>
    h1{
      color: red;
    }
  </style>

(2)类选择器

类选择器的格式 .class的名称{}

html 复制代码
  <style>
  .biaoti{
    color: #b3d4fc;
  }
  .duanluo{
    color: aqua;
  }
  </style>
</head>
<body>
<h1 class="biaoti">你好</h1>
<h1 class="duanluo">你好</h1>
</body>

(3)ID选择器

ID选择器格式 #id的名称{}

这里是引用

html 复制代码
  <style>
    #biaoti{
      color: red;
    }
  </style>
</head>
<body>
<h1 id="biaoti">标题1</h1>
</body>

层次选择器

(1)后代选择器

在某个元素的后面所有部分

在body后面的p标签全部应用这个样式

html 复制代码
  <style>
    body p{
      background: #b3d4fc;
    }
  </style>

(2)子选择器

在某个元素的后面一代

在body后面的仅下一级p标签全部应用这个样式

html 复制代码
  <style>
    body>p{
      background: #b3d4fc;
    }
  </style>

(3)相邻兄弟选择器

相邻(向下),且只有一个

仅p2有对应样式

html 复制代码
<head>
  <meta charset="UTF-8">
  <title>Example</title>
  <style>
    .active + p{
      background: #b3d4fc;
    }
  </style>
</head>
<body>
<p class="active">p1</p>
<p>p2</p>
<p>p3</p>

(4)通用选择器

当前选中元素向下的所有同级p标签元素应用样式(不限于p标签)

html 复制代码
<head>
  <meta charset="UTF-8">
  <title>Example</title>
  <style>
    .active ~p{
      background: #b3d4fc;
    }
  </style>
</head>
<body>
<p class="active">p1</p>
<p>p2</p>
<p>p3</p>
<ul>
  <li>
    <p>p4</p>
  </li>
  <li>
    <p>p5</p>
  </li>
  <li>
    <p>p6</p>
  </li>
</ul>
<p>p7</p>
</body>

结构伪类选择器

html 复制代码
<head>
  <meta charset="UTF-8">
  <title>Example</title>
  <style>
    /*ul的第一个子元素*/
    ul li:first-child{
      background: black;
    }
    /*ul的最后一个子元素*/
    ul li:last-child{
      background: green;
    }
    /*选中p标签父元素(body)下的第一个标签,若该标签为p标签,则生效;否则不生效*/
    p:nth-child(2){
      background: red;
    }
  /*选中p标签父标签(body)下的第一个p标签*/
    p:nth-of-type(2){
      background: yellow;
    }
  </style>
</head>
<body>
<h1>h1</h1>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<ul>
  <li>li1</li>
  <li>li2</li>
  <li>li3</li>
</ul>
</body>

属性选择器

html 复制代码
<head>
  <meta charset="UTF-8">
  <title>Example</title>
  <style>
    /*demo类下的a标签属性*/
    .demo a{
      font: bold 20px Arial;
      color: #b3d4fc;
    }
    /*a标签中带有id属性的*/
    a[id]{
      background: yellow;
    }
    /*a标签中类包含item的(可以不只是包含item)*/
    a[class *=item]{
      background: black;
    }
    /*a标签中类仅包含links的*/
    a[class = links]{
      background: black;
    }
    /*a标签中href开头为http的*/
    a[href ^=http]{
      background: red;
    }
  </style>
</head>
<body>
<p class="demo">
  <a href="http://www.baidu.com" class="links item" id = "first">你好</a>
</p>
</body>

4、盒子模型

Margin:外边距

padding:内边距

border:边框

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>CSS Margin, Border, Padding Example</title>
  <style>
    .box {
      /*外边距定义元素周围的空间。它在元素的外边界之外,可以用来控制元素之间的距离。这里的 20px 表示在盒子的四周各有 20 像素的间距*/
      margin: 20px;
      /*边框是围绕元素内容和内边距的线条。这里的 5px 是边框的宽度,solid 表示边框的样式是实线,#000 是边框的颜色(黑色)*/
      border: 5px solid #000;
      /*内边距是内容与边框之间的空间。这里的 10px 表示内容与边框之间有 30 像素的距离。*/
      padding: 30px;
      width: 200px;
      height: 100px;
      background-color: #f0f0f0;
    }
  </style>
</head>
<body>
<div class="box">This is a box</div>
</body>
</html>
相关推荐
初遇你时动了情16 分钟前
html js 原生实现web组件、web公共组件、template模版插槽
前端·javascript·html
QQ27402875636 分钟前
Soundness Gitpod 部署教程
linux·运维·服务器·前端·chrome·web3
前端小崔1 小时前
从零开始学习three.js(18):一文详解three.js中的着色器Shader
前端·javascript·学习·3d·webgl·数据可视化·着色器
哎呦你好1 小时前
HTML 表格与div深度解析区别及常见误区
前端·html
运维@小兵1 小时前
vue配置子路由,实现点击左侧菜单,内容区域显示不同的内容
前端·javascript·vue.js
koiy.cc2 小时前
记录:echarts实现tooltip的某个数据常显和恢复
前端·echarts
一只专注api接口开发的技术猿2 小时前
企业级电商数据对接:1688 商品详情 API 接口开发与优化实践
大数据·前端·爬虫
GISer_Jing2 小时前
[前端高频]数组转树、数组扁平化、深拷贝、JSON.stringify&JSON.parse等手撕
前端·javascript·json
Yvonne爱编码2 小时前
CSS- 4.1 浮动(Float)
前端·css·html·github·html5·hbuilder
timeguys3 小时前
【前端】[vue3] [uni-app]使用 vantUI 框架
前端·uni-app