CSS学习笔记03

CSS笔记03

盒子模型

什么是盒子模型

  • 概念:
    • CSS 盒子模型就是在网页设计中经常用到的一种思维模型,是 CSS 布局的基石,主要规定了元素是如何显示的以及元素间的相互关系。定义所有元素都可以有像盒子一样的平面空间和外形。包含内容区内边距区边框区外边距区共四个区域,这就是盒子模型。
  • 组成:
    • margin:外边距区域
    • border:边框区域
    • padding:内边距区域
    • content :内容区域

在这里插入图片描述

  • 盒子占用空间大小的计算方式:content +padding+border+margin

边框 - border

  • 设置边框:

    • border: 粗细 样式 颜色
  • 下面我们就通过写代码的方式来学习理解什么是边框以及怎样设置边框:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>/*body、h1等标签总有一个默认的外边距例如body的默认外边距 - margin: 8px;*//* 常见操作:初始化,去除默认外边距 */body,h2 {margin: 0;}/*设置边框 - border: 粗细 样式 颜色样式:solid - 实线dashed - 虚线*/#box {width: 300px;border: 1px solid red;}h2 {font-size: 16px;background-color: red;line-height: 50px;color: white;}form {background: lightpink;}span {font-size: 14px;color: darkred;}/* 结构伪类选择器 + 后代选择器 */.inputs:nth-of-type(1) input {border: 3px solid black;}.inputs:nth-of-type(2) input {border: 3px dashed blue;}.inputs:nth-of-type(3) input {border: 3px dashed red;}</style></head>
<body><div id="box"><h2>会员登陆</h2><form action="#"><div class="inputs"><span>账号:</span><input type="text"></div><div class="inputs"><span>密码:</span><input type="text"></div><div class="inputs"><span>邮箱:</span><input type="text"></div></form>
</div></body>
</html>
  • 查看网页效果:

在这里插入图片描述

内外边距 - padding & margin

  • 内边距padding与外边距margin的设置方式大致相同,这里以外边距margin为例,它共有三种常用的设置方式:

    • margin: 0; - 表示上下左右外边距都为零。
    • margin: 0 auto; - 表示上下外边距都为0,左右外边距都为自动居中对齐( auto
      • 注意:使用margin: 0 auto;对元素进行居中操作的前提是该元素必须是块元素(display:block;),且有固定的宽度(如inputbuttonimg等元素,自带宽度可以不用设置其宽度) 。
      • 可以通过对块级元素设置text-align:center;的方式来实现内联元素(如文本、图片)居中
      • margin:0 auto;可以使盒子居中,text-align:center;可以使此盒子内的内联元素居中,故有时需要两者结合使用才能使得盒子及其中的元素一起居中。
    • margin: 0 1px 2px 3px; - 表示上外边距为0,右外边距为1px,下外边距为2px,左外边距为3px(上右下左 --> 顺时针方向)。
  • 下面我们通过写代码的方式来学习理解什么是内外边距以及怎样设置内外边距:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!-- 外边距margin的妙用:居中元素margin: 0; - 上下左右外边距都为零margin: 0 auto; - 上下外边距为0,左右外边距为自动居中对齐(auto)margin: 0 1px 2px 3px; - 上外边距为0,右外边距为1px,下外边距为2px,左外边距为3px(上右下左 -> 顺时针)--><!-- 内边距padding的使用方法与margin大致相同 --><style>#box {width: 300px;border: 1px solid red;margin: 0 auto;}h2 {font-size: 16px;background-color: red;line-height: 50px;color: white;margin: 0;padding: 0 115px;}form {background: lightpink;}.inputs {padding: 10px 40px;}span {font-size: 14px;color: darkred;}input {border: 1px solid black;}</style></head>
<body><div id="box"><h2>会员登陆</h2><form action="#"><div class="inputs"><span>账号:</span><input type="text"></div><div class="inputs"><span>密码:</span><input type="text"></div><div class="inputs"><span>邮箱:</span><input type="text"></div></form>
</div></body>
</html>
  • 查看网页效果:

在这里插入图片描述

圆角边框

圆角边框的设置

  • CSS 属性border-radius允许你设置元素的外边框圆角。当使用一个半径时确定一个圆形,当使用两个半径时确定一个椭圆。这个(椭)圆与边框的交集形成圆角效果。
  • 示例:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!-- 圆角边框 - border-radius:border-radius: 20px; - 边框的四个角的圆形半径都是20pxborder-radius: 50px 10px; - 边框的左上角(↖)和右下角(↘)的圆形半径都是50px,边框的右上角(↗)和左下角(↙)都是50px【对角线】border-radius: 50px 30px 10px 0; - 边框的左上角(↖)的圆形半径是50px,右上角(↗)是30px,右下角(↘)是10px,左下角(↙)是0【顺时针】将正方形的边框变为圆形:当圆角的半径 = 1/2*(content的宽度+左右(上下)padding的宽度之和+border的宽度*2)时,该盒子的边框将由正方形变为圆形--><style >div {width: 100px;height: 100px;border: 10px solid red;margin: 10px;}#box1 {border-radius: 20px;}#box2 {border-radius: 50px 10px;}#box3 {border-radius: 50px 30px 10px 0;}#box4 {border-radius: 60px;}</style></head>
<body><div id="box1"></div>
<div id="box2"></div>
<div id="box3"></div>
<div id="box4"></div></body>
</html>
  • 查看网页效果:

在这里插入图片描述

  • 关于上述圆形边框的理解可以参照下图:

在这里插入图片描述

圆角边框的应用

  • 我们可以利用圆角边框来绘制各种图形,制作圆形的头像等等:
  • 示例:
  • 准备一张正方形的头像图片:

在这里插入图片描述

  • 具体代码如下:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>div {background: red;margin: 50px;}#box1 {width: 100px;height: 50px;border-radius: 50px 50px 0 0;}#box2 {width: 50px;height: 100px;border-radius: 0 50px 50px 0;}#box3 {width: 50px;height: 50px;border-radius: 50px 0 0 0;}img {border-radius: 50px;margin: 0 50px;}span {margin: 0 59px;}</style></head>
<body><div id="box1"></div>
<div id="box2"></div>
<div id="box3"></div>
<img src="images/ProfilePic.png" alt="ProfilePicture">
<br/>
<span>头像</span></body>
</html>
  • 查看网页效果:

在这里插入图片描述

盒子阴影

  • CSS box-shadow属性用于在元素的框架上添加阴影效果。
    • 具体用法如下box-shadow: 水平偏移量 垂直偏移量 阴影模糊半径 阴影颜色
  • 示例 - 利用box-shadow实现盒子的阴影效果以及头像图片的发光效果:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head><!-- 盒子阴影 - box-shadow: 水平偏移量 垂直偏移量 阴影模糊半径 阴影颜色 --><style>div {width: 100px;height: 100px;background-color: skyblue;margin: 100px auto;box-shadow: 20px 20px 5px black;}img {display: block;margin: 100px auto;border-radius: 50px;box-shadow: 0 0 100px yellow;}</style>
<body><div></div><img src="images/ProfilePic.png" alt="ProfilePicture"/></body>
</html>
  • 查看网页效果:

在这里插入图片描述

拓展 - 关于快速搭建网站

  • 我们在设计编写前端页面的时候要避免 “重复造轮子” ,很多复杂的样式自己用 CSS 写起来很繁琐,我们没必要花费大量时间自己去编写。我们可以直接用开源网站上提供的源码或者使用 element-ui 这类网站上的组件来搭建我们的前端页面。

  • 推荐几个网站:

    • 源码之家 - 提供了很多网站设计的源码
    • 模板之家 - 提供了很多网站设计的模板
    • Element - 网站快速成型工具 - 提供了很多快捷搭建网站的组件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/99638.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何建设一个安全运营中心(SOC)?

然信息安全管理问题主要是个从上而下的问题&#xff0c;不能指望通过某一种工具来解决&#xff0c;但良好的安全技术基础架构能有效的推动和保障信息安全管理。随着国内行业IT应用度和信息安全管理水平的不断提高&#xff0c;企业对于安全管理的配套设施如安全运营中心&#xf…

招投标系统简介 企业电子招投标采购系统源码之电子招投标系统 —降低企业采购成本

​功能模块&#xff1a; 待办消息&#xff0c;招标公告&#xff0c;中标公告&#xff0c;信息发布 描述&#xff1a; 全过程数字化采购管理&#xff0c;打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力&#xff0c;为外…

【图解RabbitMQ-3】消息队列RabbitMQ介绍及核心流程

&#x1f9d1;‍&#x1f4bb;作者名称&#xff1a;DaenCode &#x1f3a4;作者简介&#xff1a;CSDN实力新星&#xff0c;后端开发两年经验&#xff0c;曾担任甲方技术代表&#xff0c;业余独自创办智源恩创网络科技工作室。会点点Java相关技术栈、帆软报表、低代码平台快速开…

智汇云舟亮相2023服贸会,全面展示视频孪生技术与产品

9月2日-6日&#xff0c;为期5天的2023年中国国际服务贸易交易会&#xff08;以下简称&#xff1a;服贸会&#xff09;在北京首钢园举办。在电信、计算机和信息服务专题展馆中&#xff0c;智汇云舟有幸作为北京市专精特新和数字孪生企业优秀代表受邀参展&#xff0c;并携视频孪生…

C语言入门 Day_14 for循环

前言 我们定义了一个数组以后&#xff0c;要使用&#xff08;读取或者修改&#xff09;数组元素的话&#xff0c;可以一个一个的读取&#xff0c;就前两课学的那样&#xff0c;代码类似这个结构。 int number_list[5]{1,2,3,4,5}; printf("%d\n",number_list[0]); …

Bootstrap的行、列布局设计(网络系统设计)

目录 00-基础知识01-等宽列布局02-指定某一列的宽度03-根据内容自动改变列的宽度04-五种预定义列宽度 .col、.col-sm-*、.col-md-*、.col-lg-*、.col-xl-*05-不同视口宽度按不同的分列方案划分06-删除列内容的盒模型的外边距07-超过12列怎么办&#xff1f;08-重新排列各列的顺序…

Bootstrap的标题类(标题样式h1~h6)

Bootstrap 的标题字体大小通常遵循以下样式规则&#xff1a; h1 标题的字体大小为 2.5rem&#xff08;40像素&#xff09;。h2 标题的字体大小为 2rem&#xff08;32像素&#xff09;。h3 标题的字体大小为 1.75rem&#xff08;28像素&#xff09;。h4 标题的字体大小为 1.5re…

大数据的关键技术之——大数据采集

大数据的关键技术之——大数据采集 本文目录&#xff1a; 一、写在前面的话 二、大数据采集概念 三、大数据采集步骤 3.1、大数据采集步骤&#xff08;总体角度&#xff09; 3.2、大数据采集步骤&#xff08;数据集角度&#xff09; 3.3、大数据采集步骤&#xff08;数据…

O2OA(翱途)开发平台 V8.1正式发布

尊敬的O2OA(翱途)平台合作伙伴、用户以及亲爱的开发小伙伴们&#xff0c;平台 V8.1版本已正式发布。正值8月的最后一周&#xff0c;我们以更安全、更高效、更好用的崭新面貌迎接9月的到来。 O2OA开发平台v8.1版本更注重于对系统级别的安全防护。其中重大的更新&#xff0c;是对…

解决VUE3项目部署后存在缓存页面不更新的问题

方法一&#xff1a; 找到项目中的index.html文件&#xff0c;在头部加上以下代码 <meta http-equiv"Pragma" content"no-cache"> <meta http-equiv"Cache-control" content"no-cache"> <meta http-equiv"Cache&…

LeetCode 138. Copy List with Random Pointer【链表,DFS,迭代,哈希表】中等

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…

【开发问题系列】CSV转Excel

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…