文章目录 一、元素默认的外边距 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就可。
html 标签内部 , body 标签是显示部分内容的 顶层标签 ; 通过 JavaScript 和 DOM 操作 可以获取上述两个 html 和 body 特殊标签 元素 ; 1、获取 html 元素...通过 document.documentElement 属性 , 可以获取文档中的 html 元素 , 该元素是 HTML 网页文档的最顶层元素 ; 代码示例 : const htmlElement...= document.documentElement; console.log(htmlElement); // 输出整个 元素的 DOM 对象 2、获取 body 元素 使用 document.body...> 元素的 DOM 对象 3、完整代码示例 在下面的代码中 , 通过 document.body 获取 body 元素 , 将背景颜色设置为黄色 ; 通过 document.documentElement...获取 html 元素 , 将该标签下的所有字体大小设置为 30 像素 ; 代码示例 : <!
一直以为行内元素设置内外边距会不起效,之前也没有具体的去实验,只是在需要设置 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
DOM 节点 都代表文档中的一个部分 , 如 : 元素、属性或文本 , 并且这些节点以特定的关系相互连接 , 形成一个完整的树状图 ; 二、获取 DOM 元素 1、获取 DOM 元素的常用方法 获取...DOM 元素的方法 : 根据 元素 ID 获取 DOM 元素 , getElementById 函数 ; 根据 标签名 称获取 DOM 元素 , getElementsByTagName 函数 ; 根据...类名 称获取 DOM 元素 , getElementsByClassName 函数 ; 通过 HTML5 新方法 获取 DOM 元素 ; querySelector 函数 ; querySelectorAll...函数 ; 特殊 DOM 元素获取 ; 2、根据元素 ID 获取 DOM 元素 - getElementById 函数 根据元素 ID 获取 DOM 元素 , 调用 Web APIs 中提供的 getElementById...HTML 元素的 ID ; element 返回值 是 获取的 DOM 元素 Element 类型对象 , 本章节参考文档 : getElementById 函数参考文档 : https://developer.mozilla.org
DOM 元素 1、根据标签名获取 DOM 元素 - getElementsByTagName 函数 调用 Document.getElementsByTagName 函数 或 Element.getElementsByTagName...对象 ; 该对象中的 DOM 元素顺序是按照 DOM 树的 DOM 元素 发现顺序 进行排列的 ; HTMLCollection 对象是一个 " 伪数组 " , 有数组长度 , 也可以使用索引下标访问...函数 , 可以获取到 封装了多个 Element DOM 元素的 HTMLCollection 对象 ; HTMLCollection 对象是 时刻 动态改变的 , 如果 HTML 文档结构发生了改变...: 3、获取指定标签下的 DOM 元素 - getElementsByTagName 函数 上面的示例中都是获取 Document 文档下面的所有 标签名称 对应的 Element 元素 , 如果指向获取某一个指定标签下的...DOM 元素 , 则需要如下步骤 : 首先 , 通过 调用 document.getElementById 函数 , 获取指定标签对应的 Element 元素 ; 然后 , 通过 调用 element.getElementsByTagName
的 宽度 必须设定 , 也就是 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
//第二种: 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方法接收一个参数, 这个参数就是要获取的元素对象
元素获取 DOM 元素获取1 DOM 元素获取2 // 获取 js...除开上述两种获取 DOM 对象之外,还提供了一些用于获取 DOM 元素的方法。...元素获取 DOM 元素获取1 DOM 元素获取2 DOM 元素获取3 DOM 元素获取4 // 获取 js 元素 let...元素内容 既然已经学会了如何获取 DOM 元素,接下来就是看看如何修改元素中的内容。
//获取元素的属性...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.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; }
(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新增方法获取元素
领取专属 10元无门槛券
手把手带您无忧上云