javascript日常总结

如何去除掉inline-block元素之间的默认间距
前几天写一个页面

1
2
3
4
div{width:900px;}
div li{ display:inline-block; width:300px;}

  • 1
  • 1
  • 1
 发现宽度为900px的div居然放不下3个宽度为300px的内联元素li,只好改用了float:left来布局。后来上网一查,才知道inline-block是有默认间距的,默认间距为4px,并且inline也是有默认间距。现在就来盘点一些解决inline-block元素和inline元素之间间距的一些方法:

1、可以在html中直接把元素写在一行上或把闭合标签和第二个开始标签写在一行或两行间添加注释或直接去掉闭合标签但最后一个不能去掉。

2、设置margin-right为负值,但要考虑上下文的字体和文字大小。

3、先设定子元素字体,再设置父元素font-size:0px;////chrome中:-webkit-text-size-adjust:none;

4、设置父元素letter-spacing或word-spacing为负值,要考虑字体,子元素有文字也要注意设置letter-spacing或word-spacing的值。

5.float:left;

clientX、pageX、offsetX、screenX的区别
这几个属性的区别说难不难,可是很容易搞混,很长一段时间没用,发现又忘记区别了,记不清哪个是哪个!真的很抓狂!

区别:

clientX、clientY:

相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性。

pageX、pageY:

类似于clientX、clientY,但它们使用的是文档坐标而非窗口坐标。这2个属性不是标准属性,但得到了广泛支持。IE事件中没有这2个属性。

offsetX、offsetY:

相对于事件源元素(srcElement)的X,Y坐标,只有IE事件有这2个属性,标准事件没有对应的属性。

screenX、screenY:

相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性。

其实这几个的区别很好记的!其实就是英文单词的意思,不过对于广大中国人来说会觉得很迷惑。

client就是客户端,客户端就是浏览器,也就是相对浏览器的坐标。

page就是文档,也就是相对网页的坐标,也就是相对于浏览器可视区域的坐标还要加上滚动条。

offset就是偏移,也就是想相对于源元素的偏移位置。

screen就是屏幕,也就是相对于屏幕的坐标。

这样就好记了~

posted @ 2016-03-11 15:48  最骚的就是你  阅读(497)  评论(0编辑  收藏  举报