css实用入门

css也精炼了解以下内容即可:

一个网页所呈现出来的画面,你可以理解他们就是由一个又一个的盒子拼凑组成而来。

一个盒子,它有外边距,还有内边距。

黑色的部分是盒子本身的样子,外侧蓝色的部分是外边距内侧绿色的部分是内边距

1、边框border

实际开发里代码这样写:

(这种写法属于是很简写的了)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>ce Title</title></head>
<body><div style="width:300px;height:300px;border:1px solid black"></div></body>
</html>

这里的px数值就是盒子黑色边框线的粗细,px值越小,线越细,反之则越大。solid是实线,dotted和dashed是虚线,两者虚线的样式有略微不同。

2、外边距:margin

<div style="width:100px;height:100px;border:1px groove;margin-top: 10px"></div><div style="background-color:blue;width:100px;height:100px;margin:10px;"></div>

3、内边距:padding

这里设置了一个100px,所以盒子被撑大了。


<div style="background-color:blue;width:100px;height:100px;margin:10px;
padding:100px;"></div>

4、阴影。box-shadow,再详细的属性可以去菜鸟里去看。还有一些设置弧度的border-radius:20px;之类的


<div style="width:100px;height:100px;border:1px groove;
margin-top: 10px;box-shadow: 0 0 10px -2px rgba(0,0,0,.5)"></div>

5、box-sizing属性下的border-box(设置一个标准的盒状模型)

这样想要设置的边框和内边距的值就是包含在width内的。

比如width设了100px,border为1,padding是10.那么盒子里的内容就是100-1-10=89px;

如果你不理解这里是什么意思,无脑设置box-sizing:border-box;这是最简单的一种布局方式,在全局生效。

一般这样写:

step1:新建一个叫global.css的文本,让所有的新表,所有的元素都设成了一个盒子模型。

step2、引入global.css,link就是引入外部文件的意思。

如果你不想这些元素超出这个盒子,写上这个属性:overflow:hidden;就是把超出这个盒子的部分给隐藏起来。

<div style="width:100px;height:100px;border:1px 
groove;margin-top: 10px;
box-shadow: 0 0 10px -2px rgba(0,0,0,.5);
box-sizing: border-box;overflow:hidden;"><div>sssssssssssssssssssssssssssssssvssssssssssssssssvvdsksfsis</div><div>aaaasssssssssssssssssssssssssssssssvssssssssssssssssvvdsksfsis</div>
</div>

本来的样子:

隐藏了之后:

FLEX布局(弹性布局)

如果没有加flex布局的话,就是垂直排列。

这里的margin如果连写的话是上右下左,如果没写的话就为0。(顺时针)

显示如图:

但是加了flex布局之后就是水平排列

显示如图:

一共有6个属性,

属性一:flex-direction (方向)

其中的flex-direction,如果在div中直接写flex-direction:column,

<div style="magrin:20px 0;display:flex;flex-direction:column">
...
</div>

column就是纵向排列,显示如下:

也可以横向排列,代码:

<div style="magrin:20px 0;display:flex;flex-direction:row">
...
</div>

显示效果如下:

flex属性二:flex-wrap(如果在一个div内放了多个盒子,那么这些盒子的显示效果就会被挤压)

加上flex-wrap:wrap;这个属性之后就不会挤压,然后会自动分行了。

代码如下:

属性三:justify-content(默认默认是flex-start这个属性:即是从最左边到最右边去排列。)

再看一个属性flex-end:从右往左排列:

用的最多的还是center(居中排列)

space-beteween(两端对齐)

space-around(等分间距)

利用以上的知识去模拟一下豆瓣网首页

将其分为三个盒子

1、豆瓣网 2、输入框 3、读书、电影、同城...等等

属性四:align- items

因为文本框和输入框之间的显示高度是不同的,所以如果不加align-items属性的话,它就显示会是这个样子,逼死强迫症患者。

align-item一共有五个属性

代码:在代码最外侧添加align-item属性。

  <div style="flex:1;display:flex;align-items:center"><div style="width:100px;font-size:30px;color:#2f973e;">豆瓣网</div><div style="flex:1"><input type="text"></div></div>

现在做了顶部的样子:

实现代码如下:

<h2>flex布局</h2>
<div style="display: flex;width:70%;margin:30px auto;align-items:center">
<!--30px:表示上、右、下、左四个方向的外边距都是 30px。auto:表示左右外边距会自动调整,使元素水平居中
此时width的宽度就是开始从中间来算
--><div style="flex:1;display:flex;align-items:center"><div style="width:100px;font-size:30px;color:#2f973e;">豆瓣网</div><div style="flex:1;padding-left:15px"><input placeholder="请输入电影、音乐" type="text" style="border:1px solid #ccc;
padding:10px;outline: none;width:200px"></div>
<!--outline:none;是把输入框外面的黑边给去掉-->
<!-- 此时把搜索分成了两块,左右两个盒子。所以两个盒子最外侧各加一个flex:1。您看UI原图,这时豆瓣网这个div设置了固定的宽度的话,而输入框写了flex:1,此时它的宽度就会填满除去豆瓣网div宽度的所有空隙--></div><div style="flex:1;display: flex;justify-content:flex-end;font-size:20px"><div style="padding:0 10px;color:brown">读书</div><!--0:表示上下内边距为 0。10px:表示左右内边距为 10px。--><div style="padding:0 10px;color:dodgerblue">电影</div><div style="padding:0 10px;color:darkgoldenrod ">音乐</div></div></div>

属性五:position(绝对定位)

有些元素比如span标签是不能随意移动的,但是用position定位可以移动。

代码如下:

效果如下:

tips:

配图:千图网;

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

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

相关文章

【Python】基于数据库连接实现简单注册功能

说明 针对数据库的操作&#xff0c;一共分三步&#xff1a; 1.建立数据库连接 2.执行SQL语句 3.关闭数据库连接 Python操作数据库&#xff08;如MySQL)&#xff0c;Python发送能够与数据库直接通信的数据包&#xff0c;并获取数据库服务器的相应结果。是一种典型的基于TCP/IP…

导入别的目录下的py文件

要导入别的目录下的py文件&#xff0c;可以使用相对路径或绝对路径来导入。 使用相对路径导入&#xff1a; from ..other_directory import other_module使用绝对路径导入&#xff1a; import sys sys.path.append(/path/to/other_directory) import other_module在以上示例…

2024年PMP报考条件是什么?

报考PMP&#xff08;项目管理专业&#xff09;的条件并不是很困难&#xff0c;只需要满足以下两个条件之一&#xff1a; 1、年龄达到23周岁或本科毕业已满3年或高中毕业已满5年&#xff0c;满足其中任一条件即可&#xff1b; 2、获得由PMI&#xff08;项目管理学会&#xff09;…

Android 清除临时文件,清空缓存

python 代码&#xff1a; import os import shutil import tracebackdef delete_folder(path):if os.path.exists(path):print(f"删除文件夹: {path}")shutil.rmtree(path)print("删除完成")def delete_file(path):if os.path.exists(path):print(f"删…

华为数通试题

选择题 华为数通推出的面向企业的云计算平台是&#xff1f; A) FusionSphere B) CloudEngine C) Agile Controller D) eSight 下面哪个不是华为数通的核心交换机系列&#xff1f; A) S12700 B) S5700 C) S9300 D) CloudEngine 华为数通的企业级路由器系列包括哪个&#xff1f…

Python画一个圣诞树

用python画一个圣诞树 可以使用Python中的turtle模块来画一个圣诞树。 下面是一段示例代码&#xff1a; from turtle import * from random import * import math# 绘图方法 def Rightdraw(Range, Fd, Right):for i in range(Range): # Range循环次数fd(Fd) # 向前Fd个距离…

ADS学习笔记(一)——更新中

在ADS中&#xff0c;信号上升时间为信号从0&#xff5e;100&#xff05;所用的时间&#xff0c;而实际上定义的上升边均为10&#xff05;&#xff5e;90&#xff05;&#xff0c;所以可以认为上升边&#xff1d;0.8*ADS设置上升时间。 一、终端开路及短路的反射信号 1.仿真条…

【Docker】except yum.Errors.RepoError, e:-yum-config-manager --add-repo报错

问题 [rootitfuture ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoFile "/usr/bin/yum-config-manager", line 135except yum.Errors.RepoError, e:^ SyntaxError: invalid syntax原因: linux 系统中…

Transport endpoint is not connected

问题背景 今早打开服务器一看发现昨天挂上去的数据预处理脚本中断了&#xff0c;报错如下&#xff1a; python3: cant open file preprocess_data.py: [Errno 107] Transport endpoint is not connected之前从来没有遇到过这种问题&#xff0c;于是顺手执行了 cd ..&#xff…

测试工具Jmeter:设置中文界面

首先我们打开Jmeter所在的文件&#xff0c;进入bin目录&#xff0c;打开Jmeter.properties&#xff1a; 打开后找到languageen&#xff1a; 改为zh_CN: 保存关闭&#xff0c;然后再打开Jmeter&#xff1a; 英文并不会显得高级&#xff0c;能做到高效的性能测试才是高级的。

C语言中关于函数和数组的理解

函数 函数由函数头和函数体组成&#xff0c;函数头包括函数名、返回值类型和参数列表&#xff0c;函数体包括函数执行的语句块。 #include <stdio.h> int sum(int x,int y) //定义函数的作用以及格式 {int z;zxy; //作用是把两个整数相加…

【taro react】---- 解决 taro 编译 H5 姓名脱敏导致的 iOS 部分低版本白屏问题

1. 姓名脱敏方法 判断传入字段是否是字符串;将字符串除第一个字符后的其他字符全部替换为 *。const replaceUserName = (name) => {if(isTypingMathods.isString(name)){return name.replace(/(?<=.)./g,*)}return name }2. 问题 编译后在浏览器和安卓机没有发现任何问…

[THUPC 2023 决赛] 烂柯杯

题目背景 却说庞统迤逦前进&#xff0c;抬头见两山逼窄&#xff0c;树木丛杂&#xff1b;又值夏末秋初&#xff0c;枝叶茂盛。庞统心下甚疑&#xff0c;勒住马问&#xff1a;“此处是何地&#xff1f;”数内有新降军士&#xff0c;指道&#xff1a;“此处地名落凤坡。”庞统惊…

视觉增强RTK论文(1)—— GNSS-Stereo-Inertial SLAM for Arable Farming

文章目录 摘要方法标记ORB-SLAM3GNSS-Stereo-Inertial融合实验结果代码摘要 农业任务自动化速度的加快要求现场机器人采用高精度和鲁棒的定位系统。同时定位和映射(SLAM)方法不可避免地会在探索性轨迹上积累漂移,并且主要依赖于位置重新访问和循环闭合来保持一个有界的全局…

Wordpress插件WP-Statistics无法识别来访IP国家和城市处理方法

Wordpress插件WP-Statistics&#xff0c;可以识别网站访问者的IP物理地址&#xff0c;统计出城市、国家&#xff0c;但最近发现都显示unknown/未知&#xff1a; 更新GeoIP数据库到最新还是不行&#xff1a; 偶然找到了之前能用的数据库&#xff0c;恢复回去&#xff0c;竟然大…

12.1 知识回顾(过滤器、 模型层)

一、过滤器 1.1 编写步骤 1 注册app2 在某个app下&#xff1a;创建templatetags模块(模块名只能是templatetags&#xff09;3 在包下写一个py文件&#xff0c;随便命名 在py文件中&#xff1a;写入 from django import templateregister template.Library() &#xff08;注&am…

第5章-第2节-Java里的匿名对象和构造方法

1、匿名对象 匿名&#xff1a;没有名字 生活层面&#xff1a;匿名投票、匿名信... 程序层面&#xff1a; 有名对象和匿名对象 有名对象&#xff1a; 理解&#xff1a;有名字的对象 模板&#xff1a; 数据类型 对象名 new 数据类型(...); 匿名对象&#xff1a; 理…

P8736 [蓝桥杯 2020 国 B] 游园安排

题目描述 L \mathrm{L} L 星球游乐园非常有趣&#xff0c;吸引着各个星球的游客前来游玩。小蓝是 L \mathrm{L} L 星球 游乐园的管理员。 为了更好的管理游乐园&#xff0c;游乐园要求所有的游客提前预约&#xff0c;小蓝能看到系统上所有预约游客的名字。每个游客的名字由一…

dell服务器 R740xd安装windows server 2019过程记录

公司有两台dell服务器型号是R740xd&#xff0c;增加了存储&#xff0c;更新系统到windows server 2019标准版。 查找了网上的系统安装方式&#xff0c;都没有实践成功&#xff0c;做一下工作记录&#xff0c;给大家做参考。 网络搜索到的两种方式&#xff0c;进行安装 &#x…

如何通过ssh管道传输文件到ubuntu

如何在window系统中&#xff0c;通过ssh将指定的文件传输到ubuntu中呢&#xff1f; 比较常用的有以下种方式&#xff1a; 共享文件夹借助工具&#xff0c; FileZillaMobaxtermWinSCPXshell XFTP samba互传PuTTY pscp 今天主要分享一个使用python脚本搭建的一个&#xff0c;…