文章目录 一、元素默认的外边距 1、body 标签的默认外边距 2、p 标签的默认外边距 二、清除元素默认的内外边距 1、清除方式 2、代码示例 三、行内元素边距设置 一、元素默认的外边距 ---.../p> 显示效果如下 : 按 F12 键 , 进入调试模式 , 发现 p 标签元素 上下 都有 橙色的 外边距 , 右侧 红色矩形框 中 , 上边距 和 下边距 都是 1em...---- 1、清除方式 使用 通配符选择器 设置 清除内外边距 样式 , 将所有的标签元素 的 默认的内外边距 全部设置为 0 ; 清除标签默认的内外边距 样式 : * { /* 清除标签默认的内边距...也消失了 ; 三、行内元素边距设置 ---- 为 行内元素 设置 上下边距 是无效的 , 建议只为 行内元素 设置 左右边距 ; 如果为 行内元素 设置了上下边距 , 可以在某些浏览器或者 web 应用场景出现适配问题...p 标签 默认外边距 显示效果 : 按下 F12 键 , 进入 调试模式 , 选中 span 行内元素 , 为其设置 四个边距 , 只有 左右边距 50px
最近想找一个可以获取元素高度(包括外边距margin)的方法,原生JS的实现方法一直没有找到,不过有一个方法可以获取元素的边距,记录一下: 语法是(获取元素的属性值): getComputedStyle...pseudo 也有一种写法是 pseudo-element 意思是伪类 ::before,该参数不是必须的,空字符串或没有参数则表示元素本身。当不查询伪类元素的时候可以忽略或者传入 null 。...let my_div = document.getElementById("myDiv"); let style = window.getComputedStyle(my_div, null); 获取元素的上边距...computedStyle = div.currentStyle;//兼容IE的写法 } alert(computedStyle.marginTop); 这样就能弹出 div 的上边距了...而不同点就是: element.style 读取的只是元素的内联样式,即写在元素的 style 属性上的样式;而 getComputedStyle 读取的样式是最终样式,包括了内联样式、嵌入样式和外部样式
此时运行结果 可以看到子元素并没有离父元素上边距...10px而是使整个父盒子塌陷了10px 这里的解决办法有 给父元素设置border-top 给父元素定义内边距 父元素加overflow:hidden 需要注意的是浮动的盒子不会存在外边距合并塌陷的问题
ViewChild @ViewChild('box') box: ElementRef; constructor(){ // 不能放在构造函数里面这个时候构造函数中还没有视图没法获取到...box元素 } ngOnInit() { console.log(this.box.nativeElement); } 方式二: ElementRef </div
1 .原生js获取 DOM 节点 document.querySelector(选择器) document.getElementById(id选择器) document.getElementsByClassName...(class选择器) .... 2. vue2中获取当前组件的实例对象 因为每个 vue 的组件实例上,都包含一个 refs 对象,里面存储着对应的 DOM 元素或组件的引用。...$refs.名字 获取相应元素并进行操作。...$refs.but.click(); }, }, } 3.vue3中获取当前组件的实例对象 1.创建 ref 变量,给组件或元素绑定 ref 属性值为该变量 2....} from 'vue'; const container = ref(null); onMounted(()=>{ console.log('获取dom元素
$refs.bodyFont.offsetHeight); } } vue想要获取dom元素的高,一般情况下我们都可以想到写在mounted函数里,即dom加载完再获取,但是结果并不如我们所想...$nextTick(()=>{ //函数 }) 来获取,发现根本没用啊/。。...所以好的办法就是用一个setTimeout定时器,时间可以设为0,但是有时候生效,有时候不生效,还是加一个小的时间值比较保险,这样就可以保证获取到的一定是dom加载后的了,该原理适用于vue中很多传值的问题...,刚开始获取不到传过来的值,用一个setTimeout就可。
一直以为行内元素设置内外边距会不起效,之前也没有具体的去实验,只是在需要设置 margin 或者 padding 的时候给元素设置一个 display: inline-block; 就得了。 ?...原来 span 标签默认的不是只能设置左右边距,还有更有意思的现象。 我给 span 标签设置了 10px 的内边距和外边距,并设置了背景色,外面嵌套一个 p 标签。...margin 则只能设置左右边距,上下边距不起效。 但是 padding-top 去哪了?怎么看不到呢? ? 我又给外部容器设置了一个外边距,这样上内边距就显示出来了。 ?...原来 span 等行内元素是可以设置内边距 padding 的,只不过元素本身无法把父元素撑开,看上去就是设置的 padding 上下边距不起效了,而 margin 就只能设置 span 的左右边距。...10px; background: #F0DE7D; line-height: 20px; } 声明:本文由w3h5原创,转载请注明出处:《行内元素内外边距探究
这里我想到了2个方法: 方法一: 直接给相应的元素加id,然后再document.getElementById("id");获取,然后设置相应属性或样式 方法二: 使用ref,给相应的元素加ref=“name...$refs.name获取到该元素 注意:在获取相应元素之前,必须在mount钩子进行挂载,否则获取到的值为空, 如果是给子组件加id并修改自定义属性,则直接会加载改子组件对应的外层div上,并不会改变该子组件原本的自定义属性的值... 如果给子组件加ref,然后获取到该DOM元素之后改变相应的自定义属性的值,vue会报错: Avoid mutating a prop directly since the value will
的 宽度 必须设定 , 也就是 width 属性 ; 盒子模型 的 左外边距 和 右外边距 必须 设置为 auto 值 ; 如果没有设置宽度 , 块级盒子自动充满父容器 , 因此 如果要设置水平居中,...外边距复合写法 : 设置 1 ~ 4 个 值 , 单位 像素 px ; 设置 1 个值 : 设置 上下左右 外边距 ; 设置 2 个值 : 设置 上下、左右 外边距 ; 设置 3 个值 : 设置 上、左右...、下 外边距 ; 设置 4 个值 : 设置 上、右、下、左 外边距 ; 使用 margin: auto; , 将四个边距都设置为 auto , 此时左右边距自动就是 auto , 也可以实现水平居中 ;...2 外边距复合写法 : 设置 1 ~ 4 个 值 , 单位 像素 px ; 设置 1 个值 : 设置 上下左右 外边距 ; 设置 2 个值 : 设置 上下、左右 外边距 ; 设置 3 个值 : 设置 上...、左右、下 外边距 ; 设置 4 个值 : 设置 上、右、下、左 外边距 ; 使用 margin: 0 auto; , 将上下边距设置为 0 像素 , 左右边距设置为 auto ; 代码示例 : <!
- 为父容器 / 子元素设置内边距 / 边框 ---- 这里使用传统方法 : 为 父容器 / 子元素 设置 内边距 / 边框 ; 下面是 为父容器设置 1 像素的 内边距 ; .father {...- 为子元素设置浮动 ---- 为子元素设置浮动 , 可以解决 外边距 塌陷问题 ; 代码示例 : <!...padding: 1px;*/ } .son { /* 为子元素设置浮动 解决外边距塌陷问题 */ float: left; width: 200px; height:...- 为子元素设置绝对定位 ---- 为子元素设置绝对定位 , 可以解决 外边距 塌陷问题 ; 代码示例 : <!...padding: 1px;*/ } .son { /* 为子元素设置绝对定位 解决外边距塌陷问题 */ /* 注意 : 为子元素设置相对定位 仍然会出现外边距塌陷问题 */ position
元素获取 DOM 元素获取1 DOM 元素获取2 // 获取 js...除开上述两种获取 DOM 对象之外,还提供了一些用于获取 DOM 元素的方法。...元素获取 DOM 元素获取1 DOM 元素获取2 DOM 元素获取3 DOM 元素获取4 // 获取 js 元素 let...元素内容 既然已经学会了如何获取 DOM 元素,接下来就是看看如何修改元素中的内容。
//第二种: qq.style.width="333px"; qq.style.height="333px"; qq.style.backgroundColor="yellow"; */ //获取样式...let ww= document.querySelector("div"); //console.log(ww.style.width);//只能获取行内的样式,获取不到css设置的样式....// 注意点: 如果想获取到CSS设置的属性值, 必须通过getComputedStyle方法来获取 // getComputedStyle方法接收一个参数, 这个参数就是要获取的元素对象
(一般情况下参考元素 == 父级元素,这里写成参考元素而不是父级元素,在下面我会再细说) 2.width:auto也是以“占满参考元素宽度”为目标。...当参考元素的宽度一定时,子元素的margin或者padding多一点,那么子元素的width就会少一点。...说白了width:auto试图达成这一等式:子元素的width+padding(左和右)+margin(左和右) = 参考元素的的width(参考元素一般为父元素) 【举个例子】: <style type...width:auto; padding:0px 10px;//设置左右内边距为10px margin:0px 10px;//设置左右外边距为10px height...其他元素的只能跟在“领头浮动元素”的后面 但即使其他元素的没有跟在“领头元素”的后面,而是向相反方向浮动,也始终不能高于“领头浮动元素” .div2,.div3{ float: left; }
//获取元素的属性...let img1=document.querySelector("img"); console.log(img1.alt); //如何获取自定义的属性取值 console.log(img1.getAttribute...("nj")); //如何修改元素属性 let img2=document.querySelector("img"); //如何设置自定义属性。...img2.setAttribute("cygname","陈业贵"); //如何新增元素的属性 let oImg = document.querySelector("img"); // 注意点...: setAttribute方法如果属性不存在就是新增, 如果属性存在就是修改 oImg.setAttribute("it666","cyg"); //如何删除元素的属性 let oImg1
(2) 前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数 (3) 用innerHTML代替DOM操作,减少DOM操作次数...块级元素(block)特性: 总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示; 宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;...内联元素(inline)特性: 和相邻的内联元素在同一行; 宽度(width)、高度(height)、内边距的top/bottom(padding-top/padding-bottom)和外边距的top...外边距重叠就是margin-collapse。 在CSS当中,相邻的两个盒子(可能是兄弟关系也可能是祖先关系)的外边距可以结合成一个单独的外边距。...这种合并外边距的方式被称为折叠,并且因而所结合成的外边距称为折叠外边距。 折叠结果遵循下列计算规则: 两个相邻的外边距都是正数时,折叠结果是它们两者之间较大的值。
Web API - DOM DOM简介 文档对象模型,是W3C组织推荐的处理可扩展标记语言的标准编程接口。...通过DOM接口,可以改变网页的内容,结构和样式 DOM树 ---- 文档:一个页面就是一个文档,DOM中使用document表示 元素:页面中所有的标签都是元素,DOM中使用element表示 节点:网页中的所有内容都是节点...(标签,属性,文本,注释等),DOM中使用node表示 DOM把以上内容都看作对象 ---- 获取元素 如何获取页面元素 根据ID获取 根据标签名获取 用过H5新增的方法获取 特殊元素获取 根据ID获取...使用 getElementById获取带有ID的元素对象 Document的方法 getElementById()返回一个匹配特定 ID的元素....nav'); navs = nav.getElementsByTagName('li') console.log(navs); 解释: 输出: ---- 通过HTML新增方法获取元素
为业务需要,DOM元素的ID被命名为“c-order.range”,执行JQuery的DOM查询时,提示如下错误 Uncaught Error: Syntax error, unrecognized expression...解决办法:document.getElementById 以前总觉得这个办法笨拙,现在越觉得此方法强大,几乎就是大杀器,没有查询不了的元素,无论你的元素ID命名多么刁钻。
width = content + padding + border = 70px + 2 * 10px + 5 * 2px = 100px: # JS 如何设置和获取盒模型宽高 dom.style.width.../height 只能获取到行内样式宽高, 标签中 和 外链的样式取不到 dom.currentStyle.width/height 取得最终渲染后的宽高,该属性只有...,还可以取得相对于视窗的上下左右的距离 # 边距重叠 两个垂直外边距相遇时,会发生折叠,合并后的外边距高度等于两折叠外边距中最高的那个。...只有普通文档流中的垂直外边距才会发生折叠,行内元素、浮动元素或绝对定位之间的外边距不会发生折叠。...# BFC 渲染规则 BFC 元素垂直方向的边距会发生重叠,属于不同 BFC 外边距不会发生重叠 BFC 的区域不会与浮动元素的布局重叠 BFC元素是一个独立的容器,外面的元素不会影响里面的元素,里面的元素也不会影响外面的元素
js如何设置获取盒模型对应的宽和高 dom.style.width/height 这个方法只能获取写在行内样式中的宽度,写在style标签中和使用link外链都是获取不到的,我们下面来看一下: <div...window.getComputedStyle(dom).width/height 同上一个但是多浏览器支持,IE9以上支持 dom.getBoundingClientRect().width/height...根据盒模型解释边距重叠 当两个外边距相遇时,他们将形成一个外边距,合并后的外边距高度等于两个发生合并的外边距的高度中的较大者。...注意:只有普通文档流中块框的垂直外边距才会发生外边距合并,行内框、浮动框或绝对定位之间的外边距不会合并。...70px一个外边距是50px没有做其他布局的情况下这两个盒子应该是上下状堆在一起的,我们看一下他们两个间距到底是多少。
领取专属 10元无门槛券
手把手带您无忧上云