document 可视区域 document.documentElement.offsetHeight(不包括外边距) document.documentElement.clientHeight-浏览器窗口的可见区域...鼠标event事件 属性 说明 offsetX 以当前的元素的左上角为原点, 距离元素顶部的距离 offsetY 以当前的元素的左上角为原点, 距离元素左侧的距离 clientX 以浏览器窗口(...视口)的左上角为原点, 距离视口顶部距离, 不随页面滚动而改变 clientY 以浏览器窗口(视口)的左上角为原点, 距离视口左侧距离, 不随页面滚动而改变 pageX 以整个页面的左上角为原点, 距离页面顶部的距离...'px', 为字符串类型) 距离 属性 说明 offsetTop/Left 元素距离最近的带有定位(fixed/relative/absolute)的父元素的顶部/左侧的距离 scrollTop/Left...此属性可以获取或者设置对象的最顶部到对象在当前窗口显示的范围内的顶边/左侧的距离,也就是元素滚动条被向下/向右拉动的距离。
08.19自我总结 js|jq获取兄弟节点,父节点,子节点 一.js var parent = test.parentNode; // 父节点 var chils = test.childNodes;...test.previousSibling; // 上一个兄弟节点 var next = test.nextSibling; // 下一个兄弟节点 var parent = test.parentElement; // 父节点元素...previous = test.previousElementSibling; // 上一个兄弟节点元素 var next = test.nextElementSibling; // 下一个兄弟节点元素 注意操作父来控制子必须给子元素赋予一个变量...二.jq $("#test1").parent(); // 父节点 $("#test1").parents(); // 全部父节点 $("#test1").parents(".mui-content"
Again,这个问题对于使用mvvm框架,例如vue,weex和angular 是任何难度的因为他们的dom都是直接用js生成控制的,在生成之初就直接处理好久好了。...但是对于普通的js来说,这就很麻烦了。
2015-08-18 03:48:27 下面介绍JQUERY的父,子,兄弟节点查找方法 jQuery.parent(expr) 找父亲节点,可以传入expr进行过滤,比如$("span").parent...()或者$("span").parent(".class") jQuery.parents(expr),类似于jQuery.parents(expr),但是是查找所有祖先元素,不限于父元素 jQuery.children
1.div的height:100%没有效果,如何让元素的高度自动扩充为父元素的高度? 我们经常使用元素的width:100%和height:100%将元素的宽度和高度扩充至父元素的宽度和高度。...obj.offsetTop 指obj距离父容器的上边距,整型,单位像素。 obj.offsetLeft 指 obj距离父容器的左边距,整型,单位像素。...5.如何获取html元素的样式,如内边距?...DOM标准里有个全局方法getComputedStyle,可以获取到当前对象样式规则信息,如:getComputedStyle(obj,null).paddingLeft,就能获取到对象的左内边距。...---- 参考文献 [1]关于Div的宽度与高度的100%设定 [2]JS获取各种宽度、高度的简单介绍 [3]setTimeout的异步以及js是单线程的面试题.知乎.杨光 [4]CSS position
需求 实现父 div 里面 左右,上下动态分割 div,并上下改变父 div 的高度,并且宽和高都是按百分比(如图) 。 ? 2....实现原理 2.1 父布局 div class='hj-wrap'> div class="arrow">div> div> 首先一个父 div 为 hj-wrap,...上下拖动的 arrow,当上拖动时,arrow 的父 div 的高度变小,当下拖动时,arrow 的父 div 的高度变大。...拖动改变左右的 label 时,向左时,label 的父 div 的宽变小,label 的父 div 相邻的 右边的 div 宽度变大。...拖动改变上下的 label 时,向上时,label 的父 div 的高度变小,label 的父 div 相邻的下边的 div 高度变大。
方法1 获取元素的相对位置,JS还提供了一种更简单的方法:Element.getBoundingClientRect() Element.getBoundingClientRect()返回一个对象,对象包含了元素距离窗口的位置属性...content width + paddingLeftWidth + paddingRightWidth) - clientWidth; offset 计算时都包括此对象的border,padding 获取对象到父级的距离取决于最近的定位父级...其中 offsetWidth:获取元素自身的宽度(包含边框) offsetHeight:获取元素自身的高度(包含边框) offsetLeft:获取对象左侧与定位父级之间的距离 offsetTop:获取对象上侧与定位父级之间的距离...offsetLeft 返回值包含: 本元素向左偏移的像素值,元素的外边距(margin) offset父元素的左侧内边距(padding) 注意 offset父元素 不是父元素 是一直向外找的第一个有定位的元素...scroll 其中: scrollLeft:设置或获取当前左滚的距离,即左卷的距离; scrollTop:设置或获取当前上滚的距离,即上卷的距离; scrollHeight:获取对象可滚动的总高度; scrollWidth
IE9 以上支持,除此外还可以取到相对于视窗的上下左右的距离。 (6)dom.offsetWidth/offsetHeight 包括高度(宽度)、内边距和边框,不包括外边距。最常用,兼容性最好。...2.4 实例题(根据盒模型解释边距重叠) 例:父元素里面嵌套了一个子元素,已知子元素的高度是 100px,子元素与父元素的上边距是 10px,计算父元素的实际高度。 ?...class='child'>div> 它的父元素实际高度是 100px 或 110px 都可以。...2.5.2 BFC原理(渲染规则|布局规则): (1)内部的 Box 会在垂直方向,从顶部开始一个接着一个地放置; (2)Box 垂直方向的距离由 margin (外边距)决定,属于同一个 BFC 的两个相邻...,清除内部浮动(原理:触发父 div 的 BFC 属性,使下面的子 div 都处在父 div的同一个 BFC 区域之内) 4、去除边距重叠现象,分属于不同的 BFC 时,可以阻止 margin 重叠 2.6
2、涉及到的主要知识 offsetLeft: 获取当前对象与父元素的左距离 offsetTop: 获取当前对象与父元素的上距离 offsetWidth: 获取元素(含边框)的自身宽度 offsetHight...var nowX = newX - pic.offsetLeft - (mov.offsetWidth / 2); //获取移动时move块距父级左侧距离 var nowY = newY - pic.offsetTop...- (mov.offsetWidth / 2); //获取移动时move块距父级的顶部距离 4.临界值判断,当move的移动距离超出了box的范围时,需要限制其最大移动值与最小移动值。...- (mov.offsetWidth / 2); //获取移动时move块距父级左侧距离 var nowY = newY - pic.offsetTop...- (mov.offsetWidth / 2); //获取移动时move块距父级顶部距离 var maxX = pic.offsetWidth
包含文本和注释节点 原生JS有一个常见的小技巧那就是通过元素的previousSibling 属性,额外需要注意的是该属性会遍历text节点,即回车键。...从零开始我们可以这样的代码获取到一个元素属于父元素的第几个子元素。 var child = this; while( (child = child.previousSibling) !...= null ) i++; 案例代码如下: Html: 123abc JS...= null) i++; console.log(i) //console 1 通过循环遍历previousSibling 属性是否为null这个小技巧,就可以获取到当前元素在父元素中的位置了。
盒子与盒子之间的距离是外边距(类似单元格的 cellspacing)。 ? 5.2、盒子边框(border) ?...5.3、内边距 ? padding属性用于设置内边距。 **是指 边框与内容之间的距离。**当我们给盒子指定padding值之后, 发生了2件事情: 内容和边框 有了距离,添加了内边距。...5.4.5.2、 嵌套块元素垂直外边距的合并 对于两个嵌套关系的块元素,如果父元素没有上内边距及边框,父元素的上外边距会与子元素的上外边距发生合并,合并后的外边距为两者中的较大者。 ?...为了解决这个问题,大概有以下几个方案: 可以为父元素定义上边框。 可以为父元素定义上内边距。 可以为父元素添加overflow:hidden。...定位:将盒子定在浏览器的某一个位置——CSS 离不开定位,特别是后面的 js 特效。 6.2、什么是浮动(float) 元素的浮动是指设置了浮动属性的元素会脱离标准普通流的控制移动到指定位置。
jQuery获取: jQuery.parent(expr),找父亲节点,可以传入 expr 进行过滤,比如 $("span").parent() 或者 $("span").parent(".class"...) jQuery.parents(expr),类似于 jQuery.parents(expr) ,但是是查找所有祖先元素,不限于父元素 jQuery.children(expr),返回所有子节点,这个方法只会返回直接的孩子节点...获取: var chils= s.childNodes; //得到s的全部子节点 var par=s.parentNode; //得到s的父节点 var ns=s.nextSibling; /...获取节点父级,子级元素:JS的方法会比JQUERY麻烦很多,主要则是因为FF、谷歌浏览器会把你的换行也当作DOM元素:空的text元素,目前IE也是这样 div id="test"> div>div> div>div> div> 原生的JS获取ID为test的元素下的子元素。
() : 获取或设置表单内容 (原生JS使用value) 4 attr() :获取或设置匹配元素的属性和值 $(selector)....接受选择器的当前坐标 2. position() 方法返回匹配元素相对于父元素的位置(偏移)注:只能获取不能设置 在CSS定位布局中,如果我们对父元素设置position:relative,我们就可以使用...position:absolute来设置子元素相对于父元素的定位距离 l Position()函数用于返回当前匹配元素相对于其被定位的祖辈元素的偏移,也就是相对于被定位的祖辈元素的坐标。...) //8 }) //第二种 .main{ jquery中offset和position的区别 JQ中的两个方法都返回一个包含两个属性的对象-左边距和上边距...具体区别为: 1、position()获取相对于它最近的具有相对位置(position:relative)的父级元素的距离,如果找不到这样的元素,则返回相对于浏览器的距离。
父子元素边距重叠 场景一:先来看这段代码,预计实现的结果应该是父容器距离页面顶部 100px,子容器距离父容器 100px 。...class="container"> div class="content">div> div> 但是我们却得到了这样的结果,父容器距离页面上方 100px...,但是子容器和父容器之间却没有距离。...场景二:再来看这段代码,预计实现的结果应该是父容器紧贴页面顶部,子容器距离父容器 100px 。...class="container"> div class="content">div> div> 结果还是一样的,子容器和父容器之间没有距离,父容器却和页面顶部产生了距离
基本概念:标准模式和怪异模式,标准模型和IE模型 CSS如何设置这两种模型 JS如何设置获取盒模型对应的宽和高 实例题(根据盒模型解释边距重叠) BFC(边距重叠解决方案) 1.盒模型是什么 2018搜狐前端笔试题...盒模型本质上是用以封装HTML元素的概念盒子,它包含了边距,边框,填充以及实际内容。...通过JS获取盒模型对应的宽和高,有以下几种方法: 为了方便书写,以下用dom来表示获取的HTML的节点。...什么是边距重叠 如下图,父元素没有设置margin-top,而子元素设置了margin-top:20px;可以看出,父元素也一起有了边距。...块级格式化上下文” BFC的原理 内部的box会在垂直方向,一个接一个的放置 每个元素的margin box的左边,与包含块border box的左边相接触(对于从做往右的格式化,否则相反) box垂直方向的距离由
浮动 + margin * inline-block布局 (用起来方便,但是小问题较多) * flexbox布局 盒模型 如下图所示: 宽度和高度 指的是content的宽度和高度 margin指的是 距离上一个元素的距离...或者是 距离父元素的content的距离。...absolute元素的参照位置 是参照 距离元素自身 最近的 父级absolute/relative元素 进行定位的....div2的宽度 这里面需要注意:div3要出现在 div1 和 div2 之后。...viewpoint:用js或者手工确定 要把整个界面放到多大 media query:根据不同设备的特性 来匹配不同的样式。
parentNode 父节点只有一个 例子:隐藏父节点 window. (){ var aA=document.getElementsByTagName('a'); var i=0; for(i=...4,offsetParent 获取当前元素用于定位的父节点 5,子节点 firstChild,firstElementChild lastChild, lastElementChild 例子: window...的宽度 border:1px; + padding(内边距):10px + margin(外边距):20px - offsetLeft:div的左边距 offsetTop...onmousemove:根据距离计算DIV最新位置 window. () { var oDiv=document.getElementById('div1'); var disX...,子节点 相同事件 oEvent.cancelBubble=true; 阻止事件冒泡 3、鼠标事件 鼠标点击位置: oEvent.clientX 鼠标距可视区的左边距 oEvent.clientY
id="myDiv"> div> var div = document.getElementById("myDiv"); console.log(div.getBoundingClientRect...注意:right 是指元素右边界距窗口最左边的距离,bottom 是指元素下边界距窗口最上面的距离。...:元素的高度(包括边框和内边距,不包括外边距) offsetWidth :元素的宽度(包括边框和内边距,不包括外边距) 偏移值 offsetLeft :元素的相对水平偏移位置(左边界距离可视区域最左侧的距离...) offsetParent :元素的偏移容器(父元素) offsetTop :元素的相对垂直偏移位置(上边界距离可视区域最上边的距离) 事迹宽高 scrollHeight :整个元素的高度(包括带滚动条的隐蔽的地方...$(document).scrollTop() :document 元素相对 document 元素对应的滚动条顶部的垂直偏移量,可获取已滚动的距离或设置将要滚动的距离。
思路:设置父容器(一定宽度,一定高度,相对定位,子容器超出部分进行隐藏),子容器图片并排(浮动,绝对定位,每次点击进行相应的左或右偏移量) 1.html: 1 父容器 --> 12 div class="container"> 13 js中改变偏移量,从而实现图片轮播--> 14 div class="pic" style="left: 0px;"> 15...-- html body部分加载完成,最后调用js,进行操作;否则无法有效操作 --> 40 js"> 41 42 1.css: 1 /* body部分清一下外边距与内边距,不建议*(可能影响效率),主流大网站均未采用*进行清边距 */ 2 body{ 3
外边距的溢出, 特殊场合下,为子元素设置外边距(上下)会作用到父元素上 特殊场合: a. 父元素没有边框(上下) b. 为第一个(最后一个)子元素设置外边距 解决方案: a....为父元素增加边框(透明的),弊端:父元素会变高 b. 可以为父元素设置上内边距来取代子元素上外边距,弊端:父元素高度会变高 c....为父元素增加一个空子元素,弊端:多一个子元素 (2). padding 内边距 内容区域和边框(边缘)之间的距离,内边距会扩大边框所占用的区域 语法: padding: value...:first-child 获取属于其父元素中的 首个子元素 a. td:first-child 获取属于每个 tr 中的第一个 td b....外边距溢出问题 外边距常规的解决方法: A. 为父元素添加边框 B. 使用父元素的内边距,取代子元素的外边距 D.
领取专属 10元无门槛券
手把手带您无忧上云