元素的显示与隐藏

display 显示

display 设置或检索对象是否及如何显示

display: none; 隐藏对象
display: block; 除了转换为块级元素, 同时还有显示元素的意思

特点:隐藏之后不再保留位置;

visibility 可见性

visibility 设置或检索是否显示对象

visibility: visible; 对象可视
visibility: hidden; 对象隐藏

特点:隐藏之后,继续保留位置;

overflow 溢出

检索或设置对象的内容超出其指定高度及宽度时如何管理内容

属性值 描述
visible 不剪切内容也不添加滚动条
hidden 不显示超出对象尺寸的内容,超出部分隐藏掉
scroll 不管内容是否超出,始终显示滚动条
auto 超出自动显示滚动条,不超出不显示滚动条

CSS 用户界面样式

鼠标样式 cursor

设置或检索在对象上移动的鼠标指针采用何种系统预定义的光标形状

属性值 描述
default 默认
pointer 小手
move 移动
text 文本
not-allowed 禁止
轮廓线 outline

去除表单元素选中之后的默认蓝色边框

outline: none;
outline: 0;
防止文本域拖拽 resize

文本域默认右下角是可以拖拽的 ; 可以使用下列预发禁止拖拽 ;

textarea {
resize: none;
}

vertical-align 垂直对齐

图片 , 表单和文字对齐
  • 有宽度的块级元素居中对齐,是margin: 0 auto;
  • 让文字居中对齐,是 text-align: center;

但是我们从来没有讲过有垂直居中的属性。

vertical-align 垂直对齐,它只针对于行内元素或者行内块元素

vertical-align : baseline |top |middle |bottom

设置或检索对象内容的垂直对其方式。

  • 注意:

    vertical-align 不影响块级元素中的内容对齐,它只针对于行内元素或者行内块元素

    特别是行内块元素, 通常用来控制图片/表单与文字的对齐

去除图片底部空白缝隙
  • 原因

    图片或者表单等行内元素,他的底线会和父级盒子的基线对齐;

  • 解决方法

    给 img 添加 vertical-align: middle | top | bottom 让图片不要 baseline 基线对齐;

溢出文字省略号显示

white-space

white-space 设置或检索对象文本显示方式,通常我们适用于强制一行显示;

white-space: normal; 默认处理方式
white-space: nowrap; 强制在一行内显示所有文本,知道文本结束或遭遇 br 才换行
text-overflow

设置文本或检索是否使用一个省略标记(...)表示文本对象的溢出

text-overflow: clip; 不显示省略标记,(···),而是简单的裁切
text-overflow: ellipsis; 当对象内文本溢出时显示省略标记(···)

注意:一定要首先强制一行显示,再次使用 text-overflow 属性搭配使用;

总结
/* 1. 先强制在一行内显示 */
white-space: nowrap;
/* 2. 超出部分隐藏 */
overflow: hidden;
/* 3. 文字用省略号替代超出部分 */
text-overflow: ellipsis;

CSS精灵技术(sprite)

为什么需要精灵技术

为了有效减少服务器接收和发送请求的次数,提高页面的加载速度

精灵技术使用总结
  1. 精确测量每个小背景图片的大小和位置
  2. 给盒子指定小背景图片时,背景定位基本都是负值;图片默认是左上角对齐;

滑动门技术

核心技术就是利用CSS精灵(主要是背景位置)和 盒子padding撑开宽度, 以便能适应不同字数的导航栏。

一般的经典布局都是这样的:

<li>
<a href="#">
<span>导航栏内容</span>
</a>
</li>

css样式

* {
padding:0;
margin:0; }
body{
background: url(images/wx.jpg) repeat-x;
}
.father {
padding-top:20px;
}
li {
padding-left: 16px;
height: 33px;
float: left;
line-height: 33px;
margin:0 10px;
background: url(./images/to.png) no-repeat left ;
}
a {
padding-right: 16px;
height: 33px;
display: inline-block;
color:#fff;
background: url(./images/to.png) no-repeat right ;
text-decoration: none;
}
li:hover,
li:hover a {
background-image:url(./images/ao.png);
}

拓展

CSS 三角形
div {
width: 0;
height: 0;
border-top: 10px solid red;
border-bottom: 10px solid green;
border-left: 10px solid yellow;
border-right: 10px solid pink;
font-size: 0;
line-height: 0;
}
  1. 我们用css 边框可以模拟三角效果
  2. 宽度高度为0
  3. 我们4个边框都要写, 只保留需要的边框颜色,其余的不能省略,都改为 transparent 透明就好了
  4. 为了照顾兼容性 低版本的浏览器,加上 font-size: 0; line-height: 0;

CSS之 元素显示隐藏,用户界面样式,文本溢出隐藏,精灵技术,三角形的更多相关文章

  1. css文本溢出隐藏显示省略号(单行+多行)

    文本超出若干行就换行,这个功能几乎每个文本浏览网站都会用到,实现它的办法也有很多,今天简单的介绍一下实现它的方法.  一. 单行文本不换行,并将超出文本隐藏 .box-content{     ove ...

  2. 设置text-overflow文本溢出隐藏时的对齐问题

    设置text-overflow: ellipsis后引起的文本对齐问题 最近在做网页的时候用到了文本溢出隐藏的功能,但是出现了一些小问题,下面先放上示例代码吧. <p> <span ...

  3. CSS之文本溢出隐藏,不定宽高元素垂直水平居中、禁止页面文本复制

    1.如何让不固定元素宽高的元素垂直水平居中 .center { position: absolute; top: 50%; left: 50%; background-color: #000; wid ...

  4. css实现单行(多行)文本溢出显示 ...

    overflow: hidden; text-overflow:ellipsis; white-space: nowrap; 当然还需要加宽度width属来兼容部分浏览. 以上为单行文本溢出===== ...

  5. text-overflow文本溢出隐藏“...”显示

    一.文本溢出省略号显示 1.文本溢出是否“...”显示属性:text-overflow:clip(不显示省略标记)/ellipsis(文本溢出时“...”显示) 定义此属性有四个必要条件:1)须有容器 ...

  6. 如何解决Css属性text-overflow:ellipsis 不起作用(文本溢出显示省略号)

    如何使text-overflow:elipsis起作用? 想要使用css属性text-overflow:elipsis起到作用,样式必须跟overflow:hidden; white-space:no ...

  7. css 文本换行 文本溢出隐藏用省略号表示剩下内容

    正常文本的显示 <style> p{ width: 300px; box-shadow: 0 0 10px #ccc; padding: 0 20px; margin: 20px 100p ...

  8. CSS 常见的8种选择器 和 文本溢出问题

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>c ...

  9. 使用css控制文字显示几行并且剩余部分隐藏(移动端和PC端同样适用)

    前言 有些需求需要我们控制一段文本最多显示几行,就像逛淘宝京东的评价楼层一样,有时可能还需要隐藏剩余部分,这样的需求我们怎么来解决呢? 解决办法 我们完全可以使用css来解决这一需求 1. 解决文本显 ...

随机推荐

  1. Windows下CMD常用命令

    清理DNS的缓存 ipconfig /flushdns 查看dns nslookup 重置socket服务 netsh winsock reset 重置tcp/ip协议栈 netsh int ip r ...

  2. jQuery on 绑定的事件 执行两次

    $(".class1").on("click",".class2",function(){ alert('提示'); }); 上面代码,怎么 ...

  3. 改造SuperMap的DrawHandler接口,自定义绘制的图形样式

    超图WebGL三维接口中有一个绘制的接口(new Cesium.DrawHandler(viewer, mode, clampMode),它封装了绘制完之后的式样,画完之后捕捉绘制完成的实体有一定的难 ...

  4. MR25H40非易失性串行接口MRAM

    Everspin 是设计,制造和商业销售离散和嵌入式磁阻RAM(MRAM)和自旋传递扭矩MRAM(STT-MRAM)的全球领导者,其市场和应用领域涉及数据持久性和完整性,低延迟和安全性至关重要.Eve ...

  5. 【JZOJ 5048】【GDOI2017模拟一试4.11】IQ测试

    题目大意: 判断一个序列是否是另外一个序列删除若干个数字之后得到的. 正文: 我们可以定义两个指针,分别指向长序列和短序列. 拿样例来举例: 如果指针指的数相同,两个指针都往右跳: 如果不同,则指向长 ...

  6. MySQL快速回顾:数据库和表操作

    前提要述:参考书籍<MySQL必知必会> 利用空闲时间快速回顾一些数据库基础. 4.1 连接 在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码). 连接 ...

  7. kaks calculator批量计算多个基因的选择压力kaks值

    欢迎来到"bio生物信息"的世界 今天给大家带来"批量计算kaks值"的技能. 关于kaks的背景知识我就不介绍了,感兴趣的自行搜索,这里直接开始讲怎么批量计算 ...

  8. AGC018F - Two Trees

    题意 有两棵节点数均为 n 的有根树,你需要构造一个序列 \(X_1,X_2,...,X_n\).使得对于每一棵树的每一个节点, 若令它所有的后代(包括它本身)为 \(a_1,a_2,...,a_k\ ...

  9. Elasticsearch配置集群环境

    环境选择:            1.方案一:准备三台机器   每一台机器一个节点            2.方案二:准备一台机器   启动三个节点,用端口号区分即可            3.ES启 ...

  10. 39.Python模板结构优化-引入模板include标签、模板继承使用详解

    在进行模板的构造时,不免有些模板的部分样式会相同,如果每一个模板都是重写代码的话,不仅在做的时候麻烦,而且在后期的维护上,也是相当的麻烦.所以我们可以将模板结构进行优化,优化可以通过:引入模板:模板继 ...