1.动态修改div的大小

Html:

<div>
Hello
</div>

css:

div { resize:both; overflow:auto; }

2. box-sizing 决定width、height 与padding、border的关系

  (1). 默认情况下,box-sizing 的值是content-box, 这个时候width和height不包含padding和border

<div class="box">
<div class="left">Left</div>
<div class="right">Right</div>
</div>
.box {
width: 800px;
height: 100px;
border: solid 5px red;
padding: 10px;
}
.left, .right {
border: solid 10px green;
padding: 10px;
margin: 10px;
box-sizing: content-box;
width: 340px;
float: left;
}

结果图:

            

  如图所示,div 的width为340px,与css中所设一样

  (2). 如果我们把box-sizing的值设为border-box,  这个时候width和height就包含padding和border

<div class="box">
<div class="left">Left</div>
<div class="right">Right</div>
</div>
.box {
width: 800px;
height: 100px;
border: solid 5px red;
padding: 10px;
}
.left, .right {
border: solid 10px green;
padding: 10px;
margin: 10px;
box-sizing: border-box;
width: 340px;
float: left;
}

结果如图:

             

    如图所示,div 的width为300px,与css中所设不一样,差的40刚好是padding和border的

3. content属性与:after和:before的关系

(1)、伪元素:before和:after用法

这个两个伪元素在真正页面元素内部之前和之后添加新内容(当然了,可以对伪元素应用定位可以置于任何位置)。
可以用以下例子来说明:
<p>wonyun!</p><style>p:before{content:"hello "}p:after{content:"you are handsome!"}</style>
上面例子从技术角度看,等价于下面的html结构:
<p><span>hello </span>wonyun! <span>you are handsome!</span></p>
由此可知:
  伪元素:before和:after添加的内容默认是inline元素;这个两个伪元素的content属性,表示伪元素的内容,设置:before和:after时必须设置其content属性,否则伪元素就不起作用。
那么问题来了,content属性的值可以有哪些内容呢,具体有以下几种情况:
  a. 字符串,字符串作为伪元素的内容添加到主元素中
         注意:字符串中若有html字符串,添加到主元素后不会进行html转义,也不会转化为真正的html内容显示,而是会原样输出
      b. attr(attr_name), 伪元素的内容跟主元素的某个属性值进行关联,及其内容为主元素的某指定属性的值
      c. :可以通过js动态改变主元素的指定属性值,这时伪元素的内容也会跟着改变,可以实现某些特殊效果,如图片加载失败用一段文字替换。
      d. url()/uri(), 引用外部资源,例如图片;
      e. counter(), 调用计数器,可以不使用列表元素实现序号问题。

(2)、:before和:after特点

a. 上面说了,伪元素是通过样式来达到元素效果的,也就是说伪元素不占用dom元素节点,引用:before,:after伪元素妙用里面总结的,:before和:after伪元素的主要特点如下:
  伪元素不属于文档,所以js无法操作它
  伪元素属于主元素的一部分,因此点击伪元素触发的是主元素的click事件
  原文说块级元素才能有:before, :after,其实是不妥的,大部分行级元素也可以设置伪元素,但是像img可替换元素,因为其外观和尺寸有外部资源决定,那么如果外部资源正确加载,就会替换掉其内部内容,这时伪元素也会被替换掉,但是当外部资源加载失败时,设置的伪元素是可以起作用的。
 
b. 基于伪元素的特点可以知道其优缺点,也引用别人文章的话:
  * 优点 * 减少dom节点数 * 让css帮助解决部分js问题,让问题变得简单*缺点 * 不利于SEO * 无法审查元素,不利于调试

4.去掉点击input框时出现的默认边框

  

outline: none;

5.设置字符串里字符之间的距离

letter-spacing: 10px;

CSS 随笔的更多相关文章

  1. 没人看系列----css 随笔

    目录 没人看系列----css 随笔 没人看系列----html随笔 前言 没什么要说的就是自己总结,学习用的如果想学点什么东西,请绕行. CSS (Cascading Style Sheets)层叠 ...

  2. css随笔1

    1.简单清除浏览器样式 *{        padding: 0px;        margin: 0px;    } 2.得到屏幕范围的div html,body{        width: 1 ...

  3. CSS随笔2

    1. css中: a:link { /*表示普通的,未被访问的链接状态*/    color: black;} a:visited { /*表示链接被访问过后的状态*/    color: bluev ...

  4. css随笔属性

    anchor伪类,用于阅读文章.a:link(没有接触过的链接),用于链接常规状态 (末访问的链接)a:hover(鼠标放在链接上的状态) 用于产生视觉效果(已访问的链接)a:visited(访问过的 ...

  5. CSS随笔3

    1. CSS部分简洁使用 * background-radious:使得边框角“圆化”. * background:pink  url(“图片路径”)  no-repeat: * border 可以有 ...

  6. CSS随笔1(CSS常用样式)

    样式 属性 大小 font-size(x-large ; xx-small ; 可用数值单位 : PX,PD) 样式 font-style(oblique 偏斜体 : italic 斜体 : norm ...

  7. css随笔

    1. 关于使用pre标签,且要自动换行 可以使用: word-wrap: break-word; white-space: pre-wrap; 2. 更改placeholder样式 .input::- ...

  8. Matplotlib数据可视化(3):文本与轴

      在一幅图表中,文本.坐标轴和图像的是信息传递的核心,对着三者的设置是作图这最为关心的内容,在上一篇博客中虽然列举了一些设置方法,但没有进行深入介绍,本文以围绕如何对文本和坐标轴进行设置展开(对图像 ...

  9. 初识html、css时随笔记录

    css部分样式 圆框效果:border-radius:5px; 固定样式:position:fixed;悬浮窗在IE6中position:absolute其余浏览器可以用fixed: 使table中的 ...

随机推荐

  1. web前端性能调优(一)

    最近2个月一直在做手机端和电视端开发,开发的过程遇到过各种坑.弄到快元旦了,终于把上线了.2个月干下来满满的的辛苦,没有那么忙了自己准备把前端的性能调优总结以下,以方便以后自己再次使用到的时候得于得心 ...

  2. C#中全局处理异常方式

    using System; using System.Configuration; using System.Text; using System.Windows.Forms; using ZB.Qu ...

  3. Mysql 【影响性能的几个方面】以及【性能优化顺序】

    服务器性能   cpu  可用内存大小  网络   IO (增加IO子系统) mysql 存储引擎 数据库服务器配置参数(主要优化方向)     数据库结构设计,sql语句.   慢查询

  4. url参数 加密

    加密 url +? btoa(param) 解密 url + ?atob(param)

  5. NPOI导出Excel2007板

    Excel2003有最大行限制相信大家在日常导出时都不会考虑再使用Excel2003,其实NPOI是一个听简单又好用的多里office组件的导出插件. 为了便于以后使用记录一下 第一步下载NPOI插件 ...

  6. PAT 乙级 1042 字符统计(20) C++版

    1042. 字符统计(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 请编写程序,找出一段给定文字中出现最 ...

  7. sudo 命令报错的解决方法

    尝试着用终端打开Mac的安全权限(sudo spctl --master-disable),却显示以下提示,望高手解答. sudo: /etc/sudoers is world writablesud ...

  8. mac下 python3 安装--有说明原电脑安装的文件在哪里

    https://www.cnblogs.com/meng1314-shuai/p/9031686.html 前言:mac系统自带python,不过以当前mac系统的最新版本为例,自带的python版本 ...

  9. 廖雪峰Java3异常处理-2断言和日志-3使用Commons Logging

    Commons Logging是Apache创建的日志模块: 可以挂接不同的日志系统 可以通过配置文件指定挂接的日志系统 自动搜索并使用Log4j 如果Log4j不存在,使用JDK Logging(J ...

  10. 廖雪峰Java2面向对象编程-4抽象类和接口-2接口

    1.接口的定义 抽象方法本质上是定义接口规范. 在抽象类中定义了一个抽象方法,子类中必须实现这个抽象方法. public abstract class Person{ public abstract ...