1. 浮动引起元素变成行内块元素-display:inline-block

<div style="width: 400px;height: 200px;">
<span style="float:left;width: auto;height: 100%;">
<i style="position: absolute;float: left; width: 100px;height: 50px;">
hello
</i>
</span>
</div>

效果:

div正常宽高

span{width:0;height:200px}

i{width:100px;height:50px}

所有元素经过浮动变为行内块元素 -- span不是块级元素,不支持宽高,浮动后支持宽高,height:100% 即是200px。i中绝对定位,脱离文档流,不占父级空间,所以span的width:0;

上面解析:W3C中,float会使元素产生块级框,可以理解为inline-block;但是inline-block元素之间会默认产生空白符,而flaot之间没有。虽然float脱离了文档流,但是div仍然是span的父元素,因此height:100%;也就是继承了父元素div的高度200px。i设置了postion,脱离了文档流,并不影响父元素,所以span的width:0px;

2. 显示不全的文字 ... 表示

.ellipsis {
white-space: nowrap;
text-overflow:ellipsis;
overflow:hidden;
}

3. 关于水平对齐及垂直对齐的总结

水平居中:

  1. 父元素是块元素,子元素是行内元素。

  对父元素使用text-again:center 来设定行内元素水平居中。

  1. 父元素是块元素,子元素是块元素且宽度已经设定。

解法1:给子元素添加margin:0 auto;

解法2:当父元素和子元素宽度都已知的情况下,给父元素设定padding-left或padding-rigt,或者给子元素设定margin-left或margin-right,长度为(父元素宽度-子元素宽度)/2,给父元素和子元素设定为box-sizing:border-box;可方便计算,否则得加上父元素和子元素的边框宽度。

解法3:子元素相对父元素的决定定位来解决 (子元素 left:50%,margin-left 为负 自身的一半)

解法4:利用给父元素设置flex

   .father {
display: flex;
flex-direction: row;
justify-content: center;
}

垂直居中 : 设定父元素是块级元素 且高度是已经确定的

  1. 子元素是行内元素

    给父元素或者子元素 设定line-height且其高度等于父元素的高度
  2. 子元素是块级元素且高度已经设定

    利用父元素的padding 或者 子元素的margin
  3. 子元素是块级元素且高度已经设定
  .father {
display: flex;
flex-direction: column;
justify-content: center;
}

4. 关于css3过渡和转换的总结

  1. 设置要过渡的属性
 transition:width 2s, height 2s, background-color 2s, transform 2s;
  1. 转换 就是 transform
transform:translateX(20px);

还有很多的 属性 如 translateY() translateZ() translate(a,b,c) csale(x,y) scaleX() scaleY() scaleZ() rotate() 等等....

更多点击查看

5. 关于动画的定义和使用

// 定义动画
@keyframes myfirst {
from {
background: red;
} to {
background: yellow;
}
}
// 或者 from to 可以换成 0% 10% 100% 实现更加精细的控制 // 使用 语法 animation: name duration timing-function delay iteration-count direction;
div {
animation:mymove 5s infinite; // 动画序列名字 持续时间 循环次数
}

CSS基础强化的更多相关文章

  1. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  2. C#基础强化-进程操作

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...

  3. CSS基础总结

    CSS基础总结链接地址:http://segmentfault.com/a/1190000002773955

  4. CSS基础篇之了解CSS和它的基本属性

    CSS是什么? CSS英文全名是Cascading Style Sheets翻译过来就是层叠样式表,它主是把网页表现与内容分离的一种样式设计语言.这种语言能优化我们编程,把东西简化和优化写法,而且不同 ...

  5. HTML5 -入门 (---css样式-------------(css基础与css选择器)---------------------—)

    ---恢复内容开始--- 一css基础入门与css选择器 CSS英文全拼:cascading style sheet 层叠样式表. 在html中使用:要在head中写style标签,所有样式放在sty ...

  6. css 基础---选择器

    1.css基础 selector {property: value} eg: h1 {color:red; font-size:14px;} p { text-align: center; color ...

  7. 妙味课堂——HTML+CSS基础笔记

    妙味课堂的课程讲得非常的清楚,受益匪浅.先把HTML和CSS基础课程部分视频的学习笔记记录如下: padding #PS基础 ##前端需要的PS技能 - PS技能(前端需要):切图.修图.测量 - P ...

  8. WEB前端开发CSS基础样式全面总结

    Web前端开发css基础样式全面总结 颜色和单位的使用 颜色 用颜色的名字表示颜色,比如:red 用16进制表示演示 比如:#FF0000 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-2 ...

  9. css基础不扎实

    写了两周的网页,发现自己的css基础还是很差的,当时培训学习的时候就发现了,我做的页面都特别的别扭和丑吧,在班级上应该是垫底的: 原先只知道用float,不会使用定位,网页连固定定位也不会,现在发现, ...

随机推荐

  1. centos7 安装 python3

    sudo yum -y groupinstall "Development tools" sudo yum -y install zlib-devel bzip2-devel op ...

  2. tcp为什么要三次握手,四次挥手

    tcp为什么要三次握手,tcp为什么可靠. 为什么不能两次握手:(防止已失效的连接请求又传送到服务器端,因而产生错误) 假设改为两次握手,client端发送的一个连接请求在服务器滞留了,这个连接请求是 ...

  3. PKU--3628 Bookshelf 2(01背包)

    题目http://poj.org/problem?id=3628 分析:给定一堆牛的高度,把牛叠加起来的高度超过牛棚的高度. 且是牛叠加的高度与牛棚高度之差最小. 把牛叠加的高度看作是背包的容量,利用 ...

  4. 搞了一宿,弄完了一个POP3协议

    POP3协议和SMTP协议都会了,加上PE文件的读写,APIHOOK,以及远程进程注入,我是不是就可以写个简单点的通过邮件传播的蠕虫病毒了,哈哈哈哈哈哈. 感觉POP3协议挺简单的,比那个该死的SMT ...

  5. java笔试之取近似值

    写出一个程序,接受一个正浮点数值,输出该数值的近似整数值.如果小数点后数值大于等于5,向上取整:小于5,则向下取整. package test; import java.util.*; import ...

  6. 【转载:java】详解java中的注解(Annotation)

    目录结构: contents structure [+] 什么是注解 为什么要使用注解 基本语法 4种基本元注解 重复注解 使用注解 运行时处理的注解 编译时处理的注解 1.什么是注解 用一个词就可以 ...

  7. 2019-8-31-dotnet-如何在-Mock-模拟-Func-判断调用次数

    title author date CreateTime categories dotnet 如何在 Mock 模拟 Func 判断调用次数 lindexi 2019-08-31 16:55:58 + ...

  8. leetcode242 Valid Anagram

    lc242 Valid Anagram 直接统计每种字母出现次数即可 class Solution { public boolean isAnagram(String s, String t) { i ...

  9. 阿里云 Aliplayer高级功能介绍(七):多分辨率

    基本介绍 网络环境比较复杂.网速不稳定,Aliplayer提供了多分辨率播放的模式,用户可以手工切换分辨率和播放器选择最优分辨率,基本UI如下: Source模式 source的方式指定多个清晰度的地 ...

  10. xshell上传文件到linux

    z,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具. 优点就是不用再开一个sftp工具登录上去上传下载文件. sz:将选定的文件发送(send)到本地机器 rz:运行该 ...