在前端开发中我们会经常用到伪元素,有时候需要通过js来修改伪元素的样式,那么有哪几种方式来修改伪元素的样式呢?...常用的是 ::after和::before。 伪元素用来做什么呢? CSS 伪元素用于向某些选择器设置特殊效果。...伪元素的语法是什么样的?...1、通过伪元素添加的内容不能被选中 2、伪元素添加的内容不会出现在DOM中,仅仅是在CSS渲染层中加入,所以不能直接通过js来获取 3、只能通过修改样式表的方式来修改伪元素。...以上便是通过js修改伪元素样式的方法,希望对你有所帮助。
前面一篇文章我们了解如何用js控制伪元素的样式,接下来我们看看如何修改伪元素的content属性,因为伪元素并不存在在dom中,所以我们只能通过修改样式表的方式来修改content内容,除了修改样式表还有另外一种方式...首先我们看如何通过修改样式表的方式修改伪元素content的内容,代码如下: /* a::after { content: attr(href); } */ a::before { content: "之前的内容...第二种方式我们使用css的attr函数来指定content的内容指向,然后修改其指向的data-属性: <!...$('.red').attr('data-attr',"99999") }) 以上便是使用js修改伪元素content的使用方式
有时候页面很长,元素不在显示范围内时,我们要对元素进行操作可能就会失败,这时我们就要进行一个滚动操作,让元素显示出来就好了。...# 设置目标为某个元素,我使用xpath的定位方法 xp = "//button[text()='确定']" target = driver.find_element_by_xpath(xp) # 滚动到目标位置
,两者都是以display:inline-block的属性存在,::before是在原本的元素「之前」加入内容,::after则是在原本的元素「之后」加入内容,同时伪元素也会「继承」原本元素的属性,如果原本文字是黑色...,第一段就是原本的div加上红色的伪元素文字,下方第一段是content的内容,紧接着是伪元素的颜色属性。...,让伪元素直接显示父元素属性的内容。...关于伪元素的系列文章就介绍到这里,内容很长很长,如果你能看到这里,为你点个赞。...虽然说伪元素很好用,但伪元素的内容实际上不存在网页里( 如果打开浏览器的开发者工具,是看不到内容的),所以如果在里头塞了太多的重要的内容,反而会影响到SEO 的成效,因此对于使用伪元素的定位,还是当作「
先看上面两幅图片,如果实现上面现象该如何 .main{ width: 100px; border: 1px solid red; overflow: hidden; text-overflow...如果我们内容有很多的话,但是我们只想在一行显示出来,并且多余的用省略号代替,可问题就是如果内容出现空格或连字符的话会自动换行那怎么办?...: ellipsis; } 现在特别注意内容中间有空格 111111111111111111 1111111111111111111111 ...现在解决如果在一行显示,现在问题的出现就是她会自动换行,所以我们可以阻止默认换行,认识一个属性 white-space 值 解释 ormal 默认。...inherit 规定应该从父元素继承 white-space 属性的值。
p:first-of-type 选择属于其父元素的首个元素 p:last-of-type 选择属于其父元素的最后元素 p:only-of-type 选择属于其父元素唯一的元素 p:only-child...解释一下这2个伪元素的作用 单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。 ::before就是以一个子元素的存在,定义在元素主体内容之前的一个伪元素。...起初,伪元素的前缀使用的是单冒号语法,但随着Web的进化,在CSS3的规范里,伪元素的语法被修改成使用双冒号,成为::before ::after 34 你对line-height是如何理解的?...下可能会出现FOUC现象(即样式失效导致的页面闪烁问题) 44 CSS属性overflow属性定义溢出元素内容区的内容会如何处理?...参数是scroll时候,必会出现滚动条。 参数是auto时候,子元素内容大于父元素时出现滚动条。 参数是visible时候,溢出的内容出现在父元素之外。 参数是hidden时候,溢出隐藏。
您可能还注意到,当滚动内容页面顶部有一个包含滚动内容的对话框时,一旦到达对话框的滚动边界,底层页面就会开始滚动 - 这称为滚动链接。...通常情况下,当我们对于某个不可滚动元素进行拖拽时往往会意外触发其父元素(背景元素)的滚动。...常见的业务场景比如在 Dialog、Mask 等存在全屏覆盖的内容中,当我们拖动不可滚动的弹出层元素内容时,背后的背景元素会被意外滚动。...继续沿着相同方向进行拖动,此时浏览器会寻找当前元素最近的可滚动祖先元素从而意外触发祖先元素的滚动。 同样,动画中红色边框为拥有滚动区域的父元素,蓝色边框为父元素中同样拥有滚动区域的子元素。...如果在上述的范围内,祖先元素中不存在可滚动的元素,表示整个区域实际上是不可滚动的。那么不需要触发任何父元素的意外滚动行为,直接进行 event.preventDefault() 阻止默认。
p:first-of-type 选择属于其父元素的首个 元素的每个 元素。 p:last-of-type 选择属于其父元素的最后 元素的每个 元素。...p:only-of-type 选择属于其父元素唯一的 元素的每个 元素。 p:only-child 选择属于其父元素的唯一子元素的每个 元素。...p:nth-child(2) 选择属于其父元素的第二个子元素的每个 元素。 :after 在元素之前添加内容,也可以用来做清除浮动。...视差滚动是指多层背景以不同的速度移动,形成立体的运动效果,具有非常出色的视觉体验 一般把网页解剖为:背景层、内容层和悬浮层。...伪元素 -- 在内容元素的前后插入额外的元素或样式,但是这些元素实际上并不在文档中生成。 它们只在外部显示可见,但不会在文档的源代码中找到它们,因此,称为“伪”元素。
:nth-child(n):选择是其父标签第n个子元素的所有元素。...input[type="number"] { background-color: lightblue; } ---- 伪元素选择器 将特定内容当做一个元素,选择这些元素的选择器被称为伪元素选择器。...text-align text-align CSS属性定义行内内容(例如文字)如何相对它的块父元素对齐。...元素的位置在屏幕滚动时不会改变。...---- align-content CSS 的 align-content 属性设置了浏览器如何沿着弹性盒子布局的纵轴和网格布局的主轴在内容项之间和周围分配空间。
优先级算法如何计算? CSS3 新增伪类有哪些?...p元素是其父元素唯一的 元素,还是可以有其他的元素,只要p元素只有一个; p:only-child 选择该p元素是其父元素的唯一子元素; p:nth-child(n) 选择属于其父元素的第n个p...(W3C CSS 2.1 规范中的一个概念,它是一个独立容器,决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用。)...浮动元素,绝对定位元素,display,overflow会触发BFC。 特性: (1)会阻止外边距折叠。 (2)会包含浮动元素。 (3)阻止元素被浮动元素覆盖。...那么12px=0.75em, 10px=0.625em 45、css属性overflow属性定义溢出元素内容区的内容会如何处理 参数是scroll时候,必会出现滚动条。
伪类选择器 伪类选择器:伪类选择器和伪元素选择器 伪类以冒号(:)开头,元素选择符和冒号之间不能有空格,伪类名中间也不能有空格。...: 伪元素名 说明 :first-letter 向文本的第一个字母添加样式 :first-line 向文本的第一行添加样式 :after 在元素之后添加内容 :before 在元素之前添加内容 css...定义背景颜色 background-image 定义背景图片 background-repeat 定义背景图片是否重复以及其重复方式 background-attachment 定义背景图片是否跟随内容滚动...background-repeat默认值为repeat,即图像沿着x轴和y轴平铺,还可以指定沿着x轴平铺rpeat-x,沿着y轴平铺repeat-y,或者不平铺no-repeat,继承父元素该属性设置inherit...css内边距属性,元素的内边距在边框和内容之间。
2 :before p:before 伪元素 在每个元素之前插入内容 2 :after p:after 伪元素 在每个元素之后插入内容 2 :lang(language) p:lang(it...p:last-of-type 伪元素 选择每个p元素是其父级的最后一个p元素 3 :only-of-type p:only-of-type 伪元素 选择每个p元素是其父级的唯一p元素 3 :only-child...p:only-child 伪元素 选择每个p元素是其父级的唯一子元素 3 :nth-child(n) p:nth-child(2) 伪元素 选择每个p元素是其父级的第二个子元素 3 :nth-last-child...p:last-child 伪元素 选择每个p元素是其父级的最后一个子级。...设置对象的背景特性。 1 background-attachment 设置或检索背景图像是随对象内容滚动(显示滚动条)还是固定的。必须先指定background-image属性。
在下面的示例中, shape-overflow: clip 将允许内容溢出形状,但它将被限制在元素的笔画框内: 滚动捕捉(scroll snap) CSS 滚动捕捉模块提供的属性可让您通过定义捕捉位置来控制平移和滚动行为...当用户滚动滚动容器内的溢出内容时,内容可以被捕捉到位,从而提供分页和滚动定位。...滚动对齐: 新的 scroll-snap-align 属性允许你控制元素在对齐到对齐位置时的对齐方式。例如,你可以使用此属性来确保元素始终与滚动容器的顶部、底部、中心或左/右对齐。...当前元素伪类(:current) :current 伪类很简单;它代表当前正在显示的元素,或该元素的祖先。我们可以使用它来创建响应用户在特定元素中的当前位置的样式。...:past 伪类表示定义为完全出现在 :current 元素之前的任何元素。然而, :future 伪类代表后面的元素。
BFC是一个独立的布局环境,其中的元素布局是不受外界的影响,并且在一个 BFC 中,块盒与行盒(行盒由一行中所有的内联元素所组成)都会垂直的沿着其父元素的边框排列。...首先,这些方法本身是有自身的设计目的,所以在使用它们创建BFC时可能会产生副作用。例如,使用overflow创建BFC后在某些情况下可能会看到出现一个滚动条或者元素内容被裁切。...他们想要这个组件上的滚动条吗? 最安全的做法应该是创建一个 BFC 时并不会带来任何副作用,它内部的元素都安全的呆在这个迷你布局中,这种方法不会引起任何意想不到的问题,也可以理解开发者的意图。...flow-root 浏览器支持情况 你可以使用display:flow-root安全的创建BFC,来解决上文中提到的各种问题:包裹浮动元素、阻止外边距叠加和阻止围绕浮动元素。 ?...不过无论如何,你现在应该已经理解了什么是 BFC,以及如何使用 overflow 或其他方法来包裹浮动,以及知道了 BFC 可以阻止元素去环绕浮动元素,如果你想使用弹性或网格布局可以在一些不支持他们的浏览器中使用
BFC是一个独立的布局环境,其中的元素布局是不受外界的影响,并且在一个 BFC 中,块盒与行盒(行盒由一行中所有的内联元素所组成)都会垂直的沿着其父元素的边框排列。...例如,使用overflow创建BFC后在某些情况下可能会看到出现一个滚动条或者元素内容被裁切。 这是由于overflow属性的设计是用来让你告诉浏览器如何定义元素的溢出状态的。...最初的开发者的意图是什么?他们想要这个组件上的滚动条吗?...flow-root 浏览器支持情况 你可以使用 display:flow-root 安全的创建 BFC,来解决上文中提到的各种问题:包裹浮动元素、阻止外边距叠加和阻止围绕浮动元素。 ?...不过无论如何,你现在应该已经理解了什么是 BFC,以及如何使用 overflow 或其他方法来包裹浮动,以及知道了 BFC 可以阻止元素去环绕浮动元素,如果你想使用弹性或网格布局可以在一些不支持他们的浏览器中使用
滚动穿透 问题描述 在移动端 WEB 开发的时候(小程序也雷同),如上录屏所示,如果页面超过一屏高度出现滚动条时,在 fixed 定位的弹窗遮罩层上进行滑动,它下面的内容也会跟着一起滚动,看起来好像事件穿透到下面的...于是在 popup 元素上设置该属性,禁用元素(及其不可滚动的后代)上的所有手势就可以解决该问题了。...Step 1、监听弹窗最外层元素(popup)的 touchmove 事件并阻止默认行为来禁用所有滚动(包括弹窗内部的滚动元素)。...Step 2、释放弹窗内的滚动元素,允许其滚动:同样监听 touchmove 事件,但是阻止该滚动元素的冒泡行为(stopPropagation),使得在滚动的时候最外层元素(popup)无法接收到 touchmove...值 描述 auto 默认效果,元素的滚动可以传播到祖先元素。 contain 阻止滚动链,滚动不会传播到祖先元素,但是会显示节点自身的局部效果。
p:only-of-type 选择属于其父元素唯一的 元素的每个 元素。 p:only-child 选择属于其父元素的唯一子元素的每个 元素。...p:nth-child(2) 选择属于其父元素的第二个子元素的每个 元素。 :after 在元素之前添加内容,也可以用来做清除浮动。...(W3C CSS 2.1 规范中的一个概念,它是一个独立容器,决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用。)...[阿里航旅的面试题] 元素竖向的百分比设定是相对于容器的高度吗? 全屏滚动的原理是什么?用到了CSS的那些属性? 什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的IE?...视差滚动效果,如何给每页做不同的动画?(回到顶部,向下滑动要再次出现,和只出现一次分别怎么做?) ::before 和 :after中双冒号和单冒号 有什么区别?解释一下这2个伪元素的作用。
领取专属 10元无门槛券
手把手带您无忧上云