(一)display与visibility

这里主要控制元素是否显示

例子

visibility:文字消失空间保留

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.li{
visibility:hidden;
}
</style>
</head>
<body>
<ul>
<li>香蕉</li>
<li class="li">梨子</li>
<li>苹果</li>
<li>芒果</li>
<li>杨桃</li>
</ul>
</body>
</html>

display:文字和空间都消失

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.li{
display: none;
}
</style>
</head>
<body>
<ul>
<li>香蕉</li>
<li class="li">梨子</li>
<li>苹果</li>
<li>芒果</li>
<li>杨桃</li>
</ul>
</body>
</html>

(二)宽度与高度

  • min-width
  • max-width
  • min-height
  • max-height

(三)内容自适用

撑满

  • fill-available:设置宽高撑满当前可用空间,
  • fit-content:宽度撑满

例子

fit-content

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
div{
width: fit-content;
border: solid 1px red;
margin: auto;
}
</style>
</head>
<body>
<div>hello</div>
</body>
</html>

fill-available:填充和其父类一样的高度
例子:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.container{
border: solid 1px red;
margin: auto;
height: 100px;
width: 100px;
}
.main{ background-color: green;
border: solid 1px black;
height: -webkit-fill-available;
}
</style>
</head>
<body>
<div class="container">
<div class="top">Today</div>
<div class="main">hello</div>
</div>
</body>
</html>

等高

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
ul{
height: 100px;
}
ul li{
display: inline-block;
width: 100px;
border: solid 1px red;
height: -webkit-fill-available;
}
</style>
</head>
<body>
<ul>
<li>www</li>
<li>sss</li>
<li>ccc</li>
</ul>
</body>
</html>

(四)浮动布局

float:会脱离文档流
两个最主要使用方式:

  • block元素水平排列
  • 文字与图片环绕排版

例子

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
div {
width: 200px;
height: 200px;
}
div:nth-of-type(1){
float: left;
border: solid 5px red;
}
div:nth-of-type(2){
float: left;
background-color: green;
}
</style>
</head>
<body>
<div>ww</div>
<div>ss</div>
</body>
</html>
  1. 1设置了float,脱离了文档流,文档流中就没有他的位置了,于是2顶替了他的位置
  2. 1,2都设置了float,都脱离了文档流,脱离后的元素没有行的概念,只能跟在行的后面显示
  3. 1取消了float回到文档流中,当然占回了他原本的位置,2还是浮动,只是前面没有元素

左右浮动

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.cc{
width: 500px;
height: 500px;
border: solid 1px #000;
}
.dd{
width: 200px;
height: 200px;
float: left;
border: solid 1px red;
}
.pp{
width: 200px;
height: 200px;
float: right;
background-color: green;
}
</style>
</head>
<body>
<div class="cc">
<div class="dd">ww</div>
<div class="pp">ss</div>
</div>
</body>
</html>

清除浮动

clear:对前后元素无效,只能作用于自身
none:允许两边都有浮动对象
left:不允许左边有浮动
right:不允许右边有浮动
both:左右都不允许有浮动对象

注意:

如果父元素没有宽高,他的宽高被子元素撑开
浮动元素不占文档流

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.cc{
width: 500px;
height: 500px;
border: solid 1px #000;
}
.dd{
width: 200px;
height: 200px;
float: left;
border: solid 1px red;
}
.pp{
width: 200px;
height: 200px;
float: right;
background-color: green;
}
p{
clear:both;
} </style>
</head>
<body>
<div class="cc">
<div class="dd">ww</div>
<div class="pp">ss</div>
<p></p>
</div>
</body>
</html>

或者是overflow:hidden;触发bfc
如何创建BFC
1、float的值不是none。
2、position的值不是static或者relative。
3、display的值是inline-block、table-cell、flex、table-caption或者inline-flex
4、overflow的值不是visible

(五)背景

background-img:url("///");
backgroun-repeat:

  • repeat-x:水平重复
  • repeat-y:垂直重复
  • no-repeat:不重复

background-position:位置

  • center居中
  • 百分比(水平,垂直)
  • 像素

background-attachment: fixed;固定

背景裁切

background-clip:以盒子模型为基础,设置背景显示范围
border-box: 默认值,背景被剪裁到边框盒
padding-box:背景被剪裁到内边距框
content-box:背景被剪裁到内容框

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.dd{
width: 100px;
height: 100px;
border:dashed 5px #000;
margin: 20px;
padding: 20px;
background-color: pink;
background-clip: padding-box;
}
</style>
</head>
<body>
<div class="dd"></div>
</body>
</html>

background-size
像素:第一值为宽,第二为高,如果只有一个就auto
百分比:相对于父元素
cover:是背景完全覆盖
contain:使宽高适用

多图背景

background-image: url(),url();
用逗号分开

渐变

Html5学习内容-4的更多相关文章

  1. HTML5 学习总结(一)——HTML5概要与新增标签

    一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电.触摸 ...

  2. web前端开发学习内容

    应该 具备的 知识技能 :懂web标准,熟练手写 xhtml css3 并符合 符合w3c标准                       代码能 兼容主流浏览器.ie6.7.8.9 ff 等.    ...

  3. HTML5 学习笔记(一)——HTML5概要与新增标签

    目录 一.HTML5概要 1.1.为什么需要HTML5 1.2.什么是HTML5 1.3.HTML5现状及浏览器支持 1.4.HTML5特性 1.5.HTML5优点与缺点 1.5.1.优点 1.5.2 ...

  4. HTML5 学习笔记--------》HTML5概要与新增标签!

      一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电. ...

  5. HTML5学习笔记(一):HTML简介

    Web前端涵盖的内容较多且杂,主要由3个部分组成:HTML标记语言.CSS样式语言和JavaScript脚本语言组成,而下面我们将先学习最新的标记语言HTML5. <!DOCTYPE>标记 ...

  6. HTML5学习总结——HTML5入门与新增标签

    一.HTML5概要 1.1.为什么需要HTML5 概念: HTML5 是继 HTML4.01, XHTML 1.0 和 DOM 2 HTML 后的又一个重要版本, 旨在消除富 Internet 程序( ...

  7. [html5] 学习笔记-表单新增的元素与属性(续)

    本节主要讲解表单新增元素的controls属性.placeholder属性.List属性.Autocomplete属性.Pattern属性.SelectionDirection属性.Indetermi ...

  8. HTML5学习之语义化标签(一)

    一.为什么HTML5要引入新语义标签 在HTML5出现之前,我们一般采用DIV+CSS布局我们的页面.但是这样的布局方式不仅使我们的文档结构不够清晰,而且不利于搜索引擎爬虫对我们页面的爬取.为了解决上 ...

  9. HTML5学习指导路线

    HTML5是现在热门的技术,经过8年的艰苦努力,该标准规范终于制定完成,在这里为想要学习HTML5初级程序员详细划分一下学习内容和步骤,让大家清楚的知道HTML5需要学什么?能够快速掌握HTML5开发 ...

  10. HTML5学习笔记(四):H5中表单新增元素及改良

    方便布局 表单内容可以放在表单标签之外,这样做的好处是方便设计时不用考虑一定要将表单元素放在指定的form标签之下,只要指定元素适用于哪个表单即可,如下: <form id="test ...

随机推荐

  1. Map集合_HashMap_TreeMap_等_小记

    Map是一种依照键值对数据存储元素的容器. Map中的元素是两个对象,一个对象作为键,一个对象作为值.一个键(key)和它对应的值构成map集合中的一个元素.Map集合的数据结构只跟键有关,键不可以重 ...

  2. Linux下Oracle单实例配置多监听

    Oracle单实例配置多监听 一.前言 有时候我们项目中需要使用Oracle数据库,同时要需要不同的数据源,而Oracle不像Mysql那样直接建个库即可,Oracle是以账号为单位,可以理解为一个账 ...

  3. 反射(Java Reflection)

    Java反射机制概述 Reflection(反射)是Java被视为动态语言的关键,反射机制允许程序在执行期借助于ReflectionAPI取得任何类的内部信息,并能直接操作任意对象的内部属性及方法. ...

  4. snmptt解析中文trap消息

    项目中使用了中国电信系统集成公司的虚拟化平台,为通过zabbix监控,接收HyperCenter发送的告警,需要将trap消息中的汉语编码转译.网络上snmptt资料不多,官网文档也不甚友好,通过参考 ...

  5. KVM (Centos7)使用macvtap网卡的后续 -- 宿主机创建macvtap网卡,并配置ip

    因为使用虚拟机上的 macvtap 网卡与宿主机器上的网卡无法直接通信,所以需要在宿主机上也创建 macvtap 网卡,将 ip 迁移过去. 因为未能找到配置文件的设置方法,所以使用脚本来配置,并将脚 ...

  6. React:TypeError: Cannot read properties of undefined (reading 'map')

    解决方案 js中?问号代表可选项 可选链式操作符 参考链接 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Oper ...

  7. APubPlat 一款Devops自动化部署、持续集成、堡垒机开源项目、友好的Web Terminal

    嗨.很高心你能进入这里,我是zane,  在这里给你介绍一款完整的Devops自动化部署工具 APubPlat - 一款完整的Devops自动化部署.持续集成.堡垒机.并且友好的Web Termina ...

  8. 配置oracle DG

    主库名称:prod1 使用asm存储数据 11.2.03 同一机器备库名称:dg 使用file存储数据 11.2.03 配置备库的参数文件cd $ORACLE_HOME/dbsvi initdg.or ...

  9. JavaScript中单例模式这样用

    如果希望自己的代码更优雅.可维护性更高以及更简洁,往往离不开设计模式这一解决方案. 在JS设计模式中,最核心的思想:封装变化(将变与不变分离,确保变化的部分灵活,不变的部分稳定). 单例模式 那么来说 ...

  10. Java Maven POM配置参考

    介绍 什么是POM? POM代表"项目对象模型".它是一个名为pom.XML的文件中保存的Maven项目的XML表示. 快速概览 这是一个直接位于POM项目元素下的元素列表.请注意 ...