这是一些我在前端代码编写过程中的一些笔记,有一些平常经常会遇到的,但是又容易忘记,所以做了以下笔记。
1. 关于表格
在一些数据的展示方面通常都要使用表格,这时候,表格的大小样式方面显得非常重要。因为一旦表格大小不合适,容易造成变形。以下是一般表格的模板:
|
|
如上图所示,先把能确定最大大小的单元格宽度全部固定下来,剩下一个可能内容比较多且宽度不固定的单元格不加宽度,使其自适应。
2. 使用z-index改变元素层级
使用z-index改变元素层级时,要对该元素加定位,一般使用
|
|
3. 清除浮动
在平常我们coding时候经常会发生子元素浮动而引起父级元素不能完全撑开的状况,解决办法:
|
|
4. 文本模糊效果
|
|
5. jquery遍历函数
- filter(expression)
过滤掉与expression参数值指定的标准不匹配(返回值为false)的元素集合,例子:
|
|
- map(callback)
将元素集合中的每一个元素调用回调函数,并将返回值收集到jQuery对象实例中,例子:
|
|
- each(callback)
遍历匹配集里所有的元素,为每一个元素调用传入的迭代函数,例子:
|
|
6. iframe的bug
使用iframe标签时,如果iframe标签不闭合,即
7. 鼠标放在图片上,图片放大显示
|
|
8. 解决img标签间距问题
关于img标签间距问题:
多个img之间有间距,包含img标签的div之间有间距块级元素包含内联元素如图片文字等时,内联元素默认是和父级元素的baseline(基线)对齐的,而baseline又和父级元素底边有一定的距离(这个距离和font有关,不一定是5px),所以以上代码的效果中不同div之间有间隙,这是因为图片与父元素的底边有距离。说到baseline呢,其实它是vertical-align属性的默认值,vertical-align属性是设置元素的垂直排列的,用来定义行内元素的基线相对于该元素所在行的基线的垂直对齐,除了baseline对齐方式之外,还可以是sub | super | top | text-top | middle | bottom | text-bottom |inherit(任何的版本的Internet Explorer (包括 IE8)都不支持属性值 “inherit”)。
知道了问题产生的原因,就好对症下药解决问题了,其实就是要消除baseline对齐方式产生的距离。所以,
方法1:很容易想到,把对齐方式改一下不就好了,于是设置img的vertical-align属性为bottom;
方法2:就是上文说的给父元素加上font-size:0的属性,既然这个距离和font有关,那么把字体大小设为0,总该没有距离了吧;
方法3:可由方法二想到,既然为0可以,那把行高设的很小可不可以呢?经试验发现,本例图片大小为200px,设line-height不大于12就能够消除间隙了,鉴于这个距离一般是5px,所以可以把line-height设为5px左右;
另外一个间隙是多个img标签的左右间隙,是由于img标签是行内元素,而事实是当行内元素之间有“回车”、“tab”、“空格”时就会出现间隙。
所以方法就是上文提到的,去掉img标签之间所有的空格,如果又不想把所有连续的行内元素写到一行,可以多行注释,把空格回车什么的注释掉,就像下图这样;当连续的行内元素不是img时,也可以通过设置父元素的font-size为0来消除左右间隙。
方法四:把img变成块级元素
9. 移动端字体设置:
|
|
10. chrome浏览器,将html网页中input [file] 元素css样式中的’cursor’属性设置为’pointer’,但是鼠标移上去后的形状还是箭头。
解决办法:
为input [file]元素添加css样式:
11. 模拟input[file]上传按钮,以及文件名获取方法如下:
|
|
|
|
12. js判断电话号码运营商
|
|
###13. 纯css小三角形
html:
样式: