CSS 技巧总结
2024-08-26 00:03:46
CSS 技巧和经验列表
1. 如何清除图片下方出现的几像素的空白
方法一:
img{display:block;}
方法二:
img{vertical-align:top;}
除了top值,还可以设置为text-top | middle | bottom | text-bottom,甚至特定的<length>和<percentage>值都可以
方法三:
#test{font-size:0;line-height:0;}
test为img的父元素
2. 设置滚动条的颜色
3. 文本溢出边界显示为省略号
#test{
width: 150px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
首先需设置将文本强制在一行内显示,然后将溢出的文本通过overflow:hidden截断,并以text-overflow:ellipsis方式将截断的文本显示为省略号。
4. 如何使连续的长字符串自动换行
方法:
#test{width:150px;word-wrap:break-word;}
word-wrap的break-word值允许在单词内换行
5. 清除浮动
方法一:
#test{clear:both;}
#test为浮动元素的下一个兄弟元素
方法二:
#test{display:block;zoom:1;overflow:hidden;}
#test为浮动元素的父元素。zoom:1也可以替换为固定的width或height
方法三:
#test{zoom:1;}
#test:after{display:block;clear:both;visibility:hidden;height:0;content:'';}
#test为浮动元素的父元素
6. 如何让已知高度的容器在 页面 中水平垂直居中
#test{position:absolute;top:50%;left:50%;width:200px;height:200px;margin:-100px 0 0 -100px;}
7. 在不知道自己高度和父元素高度的时候,实现子元素在父元素中的水平垂直居中
方法:
#parent{position: relative;}
#child{position: absolute;top: 50%;left: 50%;transform: translateX(-50%) translateY(-50%);}
8. 在已知高度的父元素中垂直居中
方法:
#parent{height:xxx;}
#child {position: relative;top: 50%;transform: translateY(-50%);}
9. 去掉超链接的虚线框
方法:
a{outline:none;}
IE7及更早浏览器由于不支持outline属性,需要通过js的blur()方法来实现,如<a onfocus="this.blur();"...
10. 如何在点文字时也选中复选框或单选框?
方法一:
<input type="checkbox" id="chk1" name="chk" /><label for="chk1">选项一</label>
<input type="checkbox" id="chk2" name="chk" /><label for="chk2">选项二</label>
<input type="radio" id="rad1" name="rad" /><label for="rad1">选项一</label>
<input type="radio" id="rad2" name="rad" /><label for="rad2">选项二</label>
所有的主流浏览器都支持
方法二:
<label><input type="checkbox" name="chk" />选项一</label>
<label><input type="checkbox" name="chk" />选项二</label>
<label><input type="radio" name="rad" />选项一</label>
<label><input type="radio" name="rad" />选项二</label>
该方式相比方法1更简洁,但IE6及更早浏览器不支持
11.如何区别display:none与visibility:hidden?
相同的是display:none与visibility:hidden都可以用来隐藏某个元素; 不同的是display:none在隐藏元素的时候,将其占位空间也去掉;而visibility:hidden只是隐藏了内容而已,其占位空间仍然保留。
12.自动换行 word-break:break-all和word-wrap:break-word的区别
word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),下一行为tulation(conguatulation)的后端部分了。
word-wrap:break-word 例子与上面一样,但区别就是它会把congratulation整个单词看成一个整体,如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断掉的。
13 禁止用户选中文本
user-select:none
14 绘制三角形
最新文章
- CSS实现多个Div等高,类似表格布局
- Android之NDK开发(转)
- ENode 2.0 - 整体架构介绍
- complex(x):创建一个复数
- PHP字符串的编码问题(转)
- 【SDK编程】
- php操作路径的经典方法
- 使用GridView来获取xml文件数据
- 跨专业学习编程的苦逼生活 QWQ嘤嘤嘤
- 磁盘管理 之 parted命令添加swap,文件系统
- MSSQL 备份数据库还原
- python基础自学 第二天
- mac上制作ubuntu引导盘
- Android 中关于 【Cursor】 类的介绍
- uva-10167-枚举
- PSP总结
- nodejs基础 -- Stream流
- zoj 1760 查找
- python tesseract 识别图片中的文字的乱码问题(ubuntu系统下)
- Access 2010 VBA 读取 表中的数据
热门文章
- Openstack创建镜像
- 如何设置,使IntelliJ IDEA智能提示忽略大小写
- 史上最易懂的大数据 OTO
- HTML5 云知梦自觉,记录知识 点
- table width 决定 td width
- SpringMVC 之拦截器和异常处理
- shell function/for in/for (())/string concat/has dir/rename using regex/if(())/exit/execute command and pass value to variable/execute python
- CNI portmap插件实现源码分析
- rest_framework之魔法类
- 添加git忽略文件