首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【前端面试题】04—33道基础CSS3面试题(附答案)

( transform:rotate(9deg)scale(0.85,0.90)translate(0px, 30px)skew(-9deg,0deg);// 旋转、缩放、定位、倾斜。...5、CSS3动画如何在动作结束时保持该状态不变? 采用 animation- fill-mode。其可以设置为以下值。 none,不改变默认行为。...方法一,使用 jQuery $('div‘).animate({'left':100},2000); 方法二,使用 JavaScript+CSS3 CSS部分如下。...(2)会在CSS文件添加大段的查询代码,增加了CSS文件的大小,为改进上述缺点,可以使用 JavaScript获取移动设备屏幕的宽度,根据设计稿的原型尺寸,动态地计算font-size的值。...-webkit-mask-clip,即蒙版裁剪位置。 -webkit-mask- origin,即蒙版原点位置。 24、如何通过CSS3实现背景颜色线性渐变?

2.8K10

前端canvas基础复习,canvas学习笔记,持续记录

Canvas基础 1.介绍 Canvas API(画布)是在HTML5新增的标签用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图(bitmap)。...通常来说网格的一个单元相当于 canvas 元素的一像素。栅格的起点为左上角(坐标为(0,0))。所有元素的位置都相对于原点定位。...1.平移(translatetranslate() 方法,将 canvas 按原始 x 点的水平方向、原始的 y 点垂直方向进行平移变换 ctx.translate(50, 50); ctx.fillRect...鼠标按下:mousedown 鼠标松开:mouseup 鼠标移动:mousemove 将鼠标当前的坐标值减去 canvas 元素的偏移位置,则 x、y 为鼠标在 canvas 的相对坐标 2.键盘事件...1.捕获物体 想要拖曳一个物体或者抛掷一个物体,首先要知道怎么来捕获一个物体。只有捕获了一个物体,才可以对该物体进行相应的操作。 在 Canvas ,对于物体的捕获,可以分为以下四种情况来考虑。

2.3K40
您找到你想要的搜索结果了吗?
是的
没有找到

Chrome开发者工具的11个高级使用技巧

强大的屏幕截图 捕获屏幕内容是一个非常常见的功能需求,当然我非常确定在你当前的计算机上已经有了非常方便的截图工具了。但是,你可以完成以下任务吗?...比如你想知道如何在 JavaScript 反转字符串,然后你在网络上搜索相关信息并找到以下代可行代码。 'abcde'.split('').reverse().join('') ?...在 Chrome 开发者工具,我们可以使用“网络”面板下的Capture Screenshots功能来捕获页面加载时的屏幕截图。 ? 单击每个屏幕截图可以显示相应的当前时间的网络请求状态。...使用此功能,你可以将 JavaScript 变量的值复制到你的剪贴板,方便在其他位置使用。 6....上面的展示,在“元素”面板中将某个 div 的位置拖动到其他位置,它在网页上的展示位置就会同步更改。 9.

2.2K60

分享 | 前端性能优化(CSS动画篇)

为每个节点生成图形和位置(Layout--回流和重布局) 3. 将每个节点填充到图层(Paint Setup和Paint--重绘) 4....取而代之的更好方法是使用translate,这个不会触发重布局 JS动画和CSS3动画的比较 我们经常面临一个抉择:是使用JavaScript的动画还是使用CSS的动画,下面将对比一下这两种方式 JS动画...缺点:JavaScript在浏览器的主线程运行,而其中还有很多其他需要运行的JavaScript、样式计算、布局、绘制等对其干扰。...优点:JavaScript的动画与CSS预先定义好的动画不同,可以在其动画过程对其进行控制:开始、暂停、回放、中止、取消都是可以做到的。...由于GPU的参与,现在用来做动画的最好属性是如下几个: * opacity * translate * rotate * scale 也许会有一些新的方式使得可以使用JavaScript做出更好的没有限制的动画

1.9K20

Vuejs开发过程中一些常见问题的解决方法

为此可以添加一个keep-alive指令 3.如何让css只在当前组件起作用 在每一个vue组件中都可以定义各自的...css,js,如果希望组件内写的css只对当前组件起作用,只需要在style写入scoped,即: 4.vuejs循环插入图片 在写循环的时候,写入如下代码...和CSS规则[v-cloak]{display:none}一起用时,这个指令可以隐藏未编译的Mustache标签直到实例准备完毕。...12.vuejs过渡动画 在vuejscss定义动画: .zoom-transition{ width:60%; height:auto;...(0,0); } 其中动画在定的时候要注意上下对应,上面有什么,下面有什么,都要变化的,如果有不变化的,应该抽离出去,作为公共css样式,在上面的css,如果我只写 transform: translate

6.5K30

前端开发不可忽视的知识点汇总(二)

polyfill 是“在旧版浏览器上复制标准 API 的 JavaScript 补充”,可以动态地加载 JavaScript 代码或库,在不支持这些标准 API 的浏览器模拟它们。...我们给一个dom同时绑定两个点击事件,一个用捕获,一个用冒泡。会执行几次事件,会先执行冒泡还是捕获? 按照W3C的标准,先发生捕获事件,后发生冒泡事件。...减少代码间的耦合 让代码保持弹性 严格按规范编写代码 设计可扩展的API 代替旧有的框架、语言(VB) 增强用户体验 通常来说对于速度的优化也包含在重构 压缩JS、CSS、image等前端资源(通常是由服务器来解决...Server, Apache、Tomcat、Node.JS 等服务器; 6、进入部署好的后端应用, PHP、Java、JavaScript、Python 等,找到对应的请求处理; 7、处理结束回馈报头....css { -webkit-transform: translate3d(0,0,0); -moz-transform: translate3d(0,0,0); -ms-transform

1.7K40

网页|利用touch实现下拉刷新

下拉刷新在下拉到松手的过程,经历了三个状态分别是:当前手势滑动位置与初始位置差值大于零时,提示正在进行下拉刷新操作。之后当下拉到一定值时,显示松手释放后的操作提示。...touchcancel事件:当系统停止跟踪触摸的时候触发监听原生touchstart事件,记录其初始位置的值,并监听原生touchmove事件,记录并计算当前滑动的位置值与初始位置值的差值,大于0表示向下拉动...,并借助CSS3的translate属性使元素跟随手势向下滑动对应的差值,同时也应设置一个允许滑动的最大值。...监听原生touchend事件,若此时元素滑动达到最大值,则触发callback,同时将translate重设为0,元素回到初始位置。 3页面加载的实现 h5代码如下: <!...translate(0,0) rotate(0deg);} } 利用JavaScript实现下拉刷新的效果: // 下拉刷新页面 //onload是window窗口对象的事件属性,语句是把“匿名函数

1.7K20

原生 JS 手写一个优雅的图片预览功能,带你吃透背后原理

的 transform 变换,该属性应用于元素在2D或3D上的旋转,缩放,移动,倾斜等等变换,通过设置 translate(x,y) 即可偏移元素位置,设置scale即可缩放元素,当然你也可以只设置...,再通过 translate 偏移位置,是为了更自然地实现动画效果,动画结束后再将绝对定位的数值归零并把偏移量加进 translate ,并且这里我并没有直接使用 scale 放大元素,而是将比例转化为宽高的变化...指针 是输入设备的硬件层抽象(比如鼠标,触摸笔,或触摸屏上的一个触摸点),它能指向一个具体表面(屏幕)上的一个(或一组)坐标,可以表示包括接触点的位置,引发事件的设备类型,接触表面受到的压力等。...移动图片的实现是比较简单的,在每次指针按下时我们记录 clientX、clientY 为初始值,移动时计算当前的值与初始点位的差值加到 translate 偏移量即可。...在本例的代码这个CSS本身是没有意义的,为的只是触发css3硬件加速来提升性能,那为什么不直接使用 translate3d() 呢?

2.4K81

干货 | 携程火车票7个优化动画性能的方法

在日常我们可以使用 left/top,translate 来实现元素的位移,但是其实性能上还是有一定区别的因为 transform 属性不会改变自己和他周围元素的布局,他会对元素的整体产生影响。...我们平常会使用 left 和 top 属性来修改节点的位置,但正如上面所述,left 和 top 会触发重布局,修改时的代价相当大。取而代之的更好方法是使用 translate,这个不会触发重布局。...当鼠标悬停在项目上时,我们使用: hover 伪类选择器来选择当前悬停的项目,并将其背景色渐变为蓝色。 这个例子的选择器非常简单,浏览器可以很快地计算样式,从而提高动画的性能和流畅度。...例如,如果在动画中使用 JavaScript 来改变元素的位置、尺寸、样式等属性,就会触发 DOM 操作,影响动画的流畅度。 如果必须使用 JavaScript 操作 DOM,请尽可能减少它们的使用。...例如,您可以在动画开始前将需要操作的元素缓存到变量,然后在动画中直接使用这些变量,而不是每次都重新查找元素。 另外,还可以使用 CSS3 的动画属性来代替 JavaScript 操作 DOM。

17730

CSS3变形属性

CSS3变形 CSS2.1的页面都是静态的,网页设计师也习惯把它作为页面效果的设计工具。多年来,Web设计师依赖于图片、Flash或 JavaScript才能完成修改页面的外观。...这些效果在之前都需要依赖图片、Flash或JavaScript才能完成。而使用纯CSS来完成这些变形无须加载这些额外的文件,再一次提升了开发效率, 提高了页面的执行效率。...可以简单理解为,使用translate()函数可以把元素从原来的位置移动,而不影响在 X、 Y 轴上任何组件。...如果要将对象沿着一个方向移动, 沿着水平轴或者纵轴移动, 可以使用translate( tx, 0) 和translate( 0, ty)来实现。...另外,skew()函数和制图软件的变形 工具所起作用类似, 2D矩阵 CSS3Transform让操作变形变得很简单,位移函数translate() 缩放函数scale()、旋转函数rotate(

2K10

不可思议的纯 CSS 实现鼠标跟随效果

大概类似于这样: 通常而言,CSS 负责表现,JavaScript 负责行为。而鼠标跟随这种效果属于行为,要实现通常都需要借助 JS。...当然,本文的重点,就是介绍如何在不借助 JS 的情况下使用 CSS 来模拟实现一些鼠标跟随的行为动画效果。...(-50%, -50%); } 最后,我们借助 ~ 兄弟元素选择器,在 hover 页面的时候(其实是 hover 一百个隐藏的 div),通过当前 hover 到的 div,去控制小球元素的位置。...使用 div 铺满页面捕捉元素当前位置的技巧,还可以运用在其他一些效果上,譬如指示出鼠标运动轨迹: ?...额,我的看法是也许业务真的用不上或者应用场景极为有限,但是多了解一些,能在遇到问题的时候多点选择,多一些思考的空间,更好的发散思维,至少是无害吧。

4.4K10

第95天:CSS3 边框、背景和文字效果

CSS2 添加圆角矩形需要技巧,我们必须为每个圆角使用不同的图片,在 CSS3 ,创建圆角是非常容易的,在 CSS3 ,border-radius 属性用于创建圆角。...在 CSS3 之前,背景图片的尺寸是由图片的实际尺寸决定的。在 CSS3 ,可以规定背景图片的尺寸,这就允许我们在不同的环境重复使用背景图片。您能够以像素或百分比规定尺寸。...3、CSS3文字效果: text-shadow:在 CSS3 ,text-shadow 可向文本应用阴影。...translate():元素从其当前位置移动,根据给定的 left(x 坐标) 和 top(y 坐标) 位置参数:transform:translate(50px,100px);值 translate(...7、CSS3动画:通过 CSS3,我们能够创建动画,这可以在许多网页取代动画图片、Flash 动画以及 JavaScript

1.1K20

不要以自己的怀疑,认定他人的思想,不要猜疑他人,否则只会影响彼此间的情谊

如果需要使用iframe,最好是通过javascript 动态给iframe添加src属性值,这样可以绕开以上两个问题。...5、let var const let 允许你声明一个作用域被限制在块级的变量、语句或者表达式 let绑定不受变量提升的约束,这意味着let声明不会被提升到当前 该变量处于从块开始到初始化处理的“暂存死区...var 声明变量的作用域限制在其声明位置的上下文中,而非声明变量总是全局的 由于变量声明(以及其他声明)总是在任意代码执行之前处理的,所以在代码的任意位置声明变量总是等效于在代码开头声明 const...: translate3d(0,0,0); transform: translate3d(0,0,0); } 启动硬件加速 最常用的方式:translate3d、translateZ、transform...opacity属性/过渡动画(需要动画执行的过程才会创建合成层,动画没有开始或结束后元素还会回到之前的状态) will-chang属性(这个比较偏僻),一般配合opacity与translate

1.5K10

Selenium面试题

没有提供原生的方法判断元素是否存在,一般我们可以通过定位元素+异常捕获的方式判断 NO.7 seleniumhidden或者是display = none的元素是否可以定位到?...Xpath是通过相对位置定位 如果没有,那么CSS定位器应该被优先考虑,因为在大多数现代浏览器,它们的评估速度比XPath更快。 NO.10 如何去定位页面上动态加载的元素?...CSS位置策略可以与Selenium一起使用来定位元素,它使用CSS定位方法 绝对路径用 - (空格符号) 相对路径用 - >表示 ID,类,名称也可以用于XPath: css=input[name=’...: css=input[id*=’lst-ib’)] 使用内部文本的元素位置策略: css = a:contains(‘log out’) NO.20 webdriver可以用来做接口测试吗?...处理这样的控件,需要在文本框输入值之后,捕获字符串的所有建议值;然后,分割字符串,取值就好了。 NO.26 隐式等待与显式等待有什么不同?

5.7K30

【面试】1093- 21 道关于性能优化的面试题(附答案)

代替旧的框架、语言(VB) 增强用户体验。 对速度进行优化。 压缩 JavaScriptCSS、 image等前端资源(通常由服务器来解决)。 优化程序的性能(如数据读写)。...src属性为空,会重新加载当前页面,影响速度和效率,尽量避免在HTML标签写 Style属性 4、移动端性能如何优化? 优化方式如下。 尽量使用CSS3动画,开启硬件加速。...(6)尽量避免在高频事件( TouchMove、 Scroll事件)修改视图,这会导致多次渲染。 14、如何优化服务器端? 具体方法如下。 (1)启用Gzip压缩。...(1)把CSS写在页面头部,把 JavaScript程序写在页面尾部或异步操作。 (2)避免图片和 iFrame等的空src,空src会重新加载当前页面,影响速度和效率。...3d(0,0,0); transform: translate3d(0,0,0); 一个元素通过 translate3d右移500X的动画流畅度会明显优于使用left属性实现的动画移动,原因是CSS

1.6K20
领券