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

【前端】移动端Web开发学习笔记【1】

当一个鼠标事件发生,有不少于五种属性对可以给你提供关于事件位置信息。对于我们当前讨论来说它们当中三种是重要: pageX/Y提供了相对于元素CSS像素度量坐标。...Web开发者对设备宽度不感兴趣;这个是浏览器窗口宽度。 所以在桌面环境下去使用width而去忘记device-width吧。我们即将看到这个情况在移动端会更加麻烦。...---- Part 3: 移动端 ---- 两个viewport viewport太窄了,以至于不能正常展示你CSS布局。明显解决方案是使viewport变宽一些。...像在桌面环境上一样,做为一个开发者你永远不需要这个信息。你对屏幕物理尺寸不感兴趣,而是对屏幕上当前有多少CSS像素感兴趣。...clientX/Y是相对于visual viewport来计算(注意:这里竟然不是client viewport),以CSS像素为单位。这有道理,即使不能完全指出这么做好处。

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

2019年了,你还不会CSS动画?

今年面试了很多同学,只要看到简历上写“熟练掌握CSS3”都会问问动画相关知识。然而我发现:都 2019 年了,还有很多同学不会 CSS 动画。 经常爱问一个问题是,实现如下效果: ?...即,一个小球从向右匀速移动 200px,然后移动回来,再移动过去,最后停留在 200px 处。 动效果如下: ? 就是需求这么简单一个动画,然而绝大多数人却不能答对。...不卖关子,答案是: ? 大部分面试者说,关于 CSS 动画,也看过一些教程,工作中却不怎么使用,因此就忘了。这里,准备为对 CSS 动画掌握不深小伙伴补充一下相关知识。欢迎大佬们拍板。...帧概念,想必大家很清楚,比如电影就是一帧帧图片在播放,利用图像在人脑中短时间停留来形成动态效果。CSS 动画也是利用这个原理。不过开发者不需要给出每一帧定义。只需要定义一些关键帧即可。...其中,rotate 是给这个动画起名字,from 表示最开始那一帧,to 表示结束那一帧。

41230

Web性能优化:不要与浏览器预加载扫描器对抗

在2.0秒CSS和图片被请求。 由于解析器在加载样式表受阻,而注入async脚本内联JavaScript在2.6秒出现在样式表之后,因此该脚本提供功能并不能尽快使用。...6:在移动设备上通过模拟3G连接在Chrome上运行网页WebPageTest网络瀑布。该页面包含一个样式表和一个异步脚本元素。预加载扫描器在渲染阻塞阶段发现了该脚本,并与CSS同时加载。...以下是资源加载发生情况。 10:在移动设备上通过模拟3G连接在Chrome浏览器上运行一个网页WebPageTest网络瀑布。...可以无效化预加载扫描器一种模式是使用客户端 JavaScript 呈现标记: 12:通过模拟 3G 连接在移动设备上 Chrome 上运行客户端呈现网页 WebPageTest 网络瀑布。...这种情况补救措施取决于对这个问题回答:是否有理由说明为什么页面标记不能由服务器提供而不是在客户端呈现?

5.2K151

Day4:html和css

层叠样式表 css优先级 使用!...我们在使用css时候,会出现两个或多个规则在同一元素上,这时css就会出现优先级情况....在css样式继承权重值是为0,不管父元素权重多大,被子元素继承,它权重都是为0,意思是子元素定义样式会覆盖继承样式,行内样式优先.在css中,如果权重相同,css就会遵循就近原则,则是靠近元素最近样式为最大优先级...背景图片 语法: background-image : none | url (url) // none :  无背景(默认) // url :  使用绝对或相对地址指定背景图像 如果图片不重复地话...*/ - :visited /* 已访问链接 */ - :hover /* 鼠标移动到链接上 */ - :active /* 选定链接 */ CSS注释 /* 需要注释内容

4K20

CSS 背景(background)

默认) url :  使用绝对或相对地址指定背景图像 background-image 属性允许指定一个图片展示在背景中(只有CSS3才可以多背景)可以和 background-color 连用。...(默认) no-repeat :  背景图像不平铺 repeat-x :  背景图像在横向上平铺 repeat-y :  背景图像在纵向平铺 背景位置(position) 语法: background-position...背景缩放(CSS3) 通过background-size设置背景图片尺寸,就像我们设置img尺寸一样,在移动Web开发中做屏幕适配应用非常广泛。...其参数设置如下: a) 可以设置长度单位(px)或百分比(设置百分比,相对于父盒子宽高) b) 设置为cover,会自动调整缩放比例(等比例拉伸),保证图片始终填充满背景区域(直到宽和高都填满,可能会溢出...每组属性间使用逗号分隔。 如果设置多重背景之间存在着交集(即存在着重叠关系),前面的背景会覆盖在后面的背景之上。

2K20

前端成神之路-CSS(选择器、背景、特性)

CSS复合选择器 目标 理解 理解css复合选择器分别的应用场景 应用 使用后代选择器给元素添加样式 使用并集选择器给元素添加样式 使用伪类选择器 为什么要学习css复合选择器 CSS选择器分为...行高那些事(line-height) 目标 理解 能说出 行高 和 高度 三种关系 能简单理解为什么行高等于高度单行文字会垂直居中 应用 使用行高实现单行文字垂直居中 能会测量行高 3.1...none | url (url) 参数 作用 none 无背景(默认) url 使用绝对或相对地址指定背景图像 background-image : url(images/demo.png);...5.3 CSS优先级(重点) ? 概念: 定义CSS样式,经常出现两个或更多规则应用在同一元素上,此时, 选择器相同,则执行层叠性 选择器不同,就会出现优先级问题。 1)....CSS注释 CSS注释规则: /* 需要注释内容 */ 进行注释,即在需要注释内容前使用 "/*" 标记开始注释,在内容结尾使用 "*/"结束。

1.9K20

前端成神之路-CSS高级技巧

CSS高级技巧 目标 理解 能说出元素显示隐藏最常见写法 能说出精灵产生目的 能说出去除图片底侧空白缝隙方法 应用 能写出最常见鼠标样式 能使用精灵技术 能用滑动门做导航栏案例...:default">是小白 是小手 移动 <li...CSS精灵技术(sprite) 重点 5.1 为什么需要精灵技术 ? 所示为网页请求原理,当用户访问一个网站,需要向服务器发送请求,网页上每张图像都要经过一次请求才能展现给用户。...pink老师告诉你我们为什么需要精灵技术: 为了有效地减少服务器接受和发送请求次数,提高页面的加载速度。 出现了CSS精灵技术(也称CSS Sprites、CSS雪碧)。...我们精灵图上放都是小装饰性质背景图片。 插入图片不能往上放。 我们可以横向摆放也可以纵向摆放,但是每个图片之间留有适当空隙 在我们精灵最低端,留一片空隙,方便我们以后添加其他精灵

6.8K30

5个方法对于重量级网站图片优化

####1.调整图像大小 这是必须。将图像大小调整为您网站上所需大小图像。不,不是在谈论使用CSS或在HTML中调整大小。正在谈论调整服务器上图像大小,然后将其发送给浏览器。...是的,虽然移动电话已经变得强大,移动网络变得更好,但数据显示移动数据速度仍然比宽带速度慢得多。有许多国家或地区暴扣一些乡村移动数据连接不稳定。 因此,在为移动设计Web体验要格外注意。...移动设备另一个影响因素是设备像素比率或DPR值。现代移动电话具有高密度屏幕,在相同平方英寸中包含更多像素。 [image.png] 在常规设备上看起来很好像在高密度屏幕上看起来会略微模糊。...web 图像在开始并未加载。只加载了图像占位符。稍后异步加载图像。请注意,没有用于加载图像序列。 假设你网页上有100个产品。如果您在同一间和最开始请求所有100个产品图像,则会减慢加载时间。...这些图像将与网页上其他关键项目(如CSS和JS)竞争网络带宽和CPU资源。 使用延迟加载,我们只会加载30个最初对用户可见图像。然后,当用户开始向下滚动页面,我们将继续加载更多图像。

1.5K20

css笔记

需要注意是,如果使用RGB代码百分比颜色值,取值为0不能省略百分号,必须写为0%。...好比我们浮动,有浮动开始,则就应该有浮动结束。 为什么要清除浮动 我们前面说过,浮动本质是用来做一些文字混排效果,但是被我们拿来做布局用,则会有很多问题出现, 但是,你不能说浮动不好 。...注意一定要首先强制一行内显示,再次和overflow属性 搭配使用 CSS精灵技术(sprite) 小妖精 雪碧 精灵技术产生背景 所示为网页请求原理,当用户访问一个网站,需要向服务器发送请求...精灵技术使用 CSS 精灵其实是将网页中一些背景图像整合到一张大图中(精灵),然而,各个网页元素通常只需要精灵图中不同位置某个小,要想精确定位到精灵图中某个小,就需要使用CSSbackground-image...(50px,50px) 使用translate方法来将文字或图像在水平方向和垂直方向上分别垂直移动50像素。

7.6K50

番外特别篇之 为什么不建议你直接使用UIImage传值?--从一个诡异相册九连读崩溃bug谈起

形势,瞬间变得很紧张,这个问题优先级瞬间被提到了最高!再次尝试了各种可能情况.图片大小?它是9张1.5M,就用9张3M,也是OK呀!选取,顺序有问题?...能描述,可能仅仅是我处理这个问题一个相对完整脑洞过程.部分分析过程间,明显不是有逻辑性.越是诡异问题,越是不能循规蹈矩,要时刻尝试去问自己最可能地问题是什么,而不是沿着一条路,一条道走到黑....2.确定是相册选取图片内存过高 这个问题,在真机上,并不好确定,因为连续读取9张高像素,内存是瞬间飙升,你几乎没有机会去观察内存占用,给人一种因为某种逻辑判断而导致Crash错觉.如果换做模拟器...衍生问题应用与解决 故事,真的还没有完结.从相册顺利读取这张诡异高像素后,发现没有办法将它上传,也无法在轮播图上,连续显示.简要概括如下....真没想到,一个UIImage对象,竟然会二次引起高内存占用.最终解决方法,就是在前一个页面传递 NSData数组,在赋值处,再使用imageWithData:转换为 UIImage.这样,内存使用基本没什么起伏

1.6K70

2018年十大轻量级CSS框架为构建快速网站

当建立一个网站使用CSS框架是一个真正节省时间方法,因为它为你提供了每个网页设计师在制作网站需要工具。但是正如你所知道,加载速度是一个非常重要质量因素。...因 此,编写了一个当前十大轻量级CSS框架实现列表,用于创建漂亮、功能强大、超快加载网站。 1、Pure CSS 只有3.8KB缩小和压缩,但是充满了功能!...多年来,纯CSS一直是选择轻量级框架,包括与外包软件开发团队合作。 ?...Bulma是用移动第一方法构建,它使每个元素都能对垂直阅读进行优化,并且 它网格是用Flexbox完全构建使用相同大小列实现灵活布局就像在HTML元素中添加.column类一样简单。...在线演示 10、Picnic CSS 当gzip压缩,只有3kb大小,野餐肯定是轻量级,但也有创建一个好看、功能强大网站所需一切。 ? 在线演示

1.2K20

揭秘移动端px,dpi,dpr

前言 移动端开发时候,我们拿到 UI设计稿 通常都是 640px 或者是 750px ,明明我们 设备视口宽度 是设计稿 一半 ,这是为什么呢?...比如iPhone5使用是Retina视网膜屏幕,用2x2Device Pixel代表1x1CSS Pixel,所以设备像素数为640x1136px,而CSS逻辑像素数为320x568px 所以,1...,要渲染在 dpr为2 Retina屏上,显然不能做到1个位图像素对应一个物理像素,这时候就会 模糊 ,解决方式就是使用 二倍 8080px ?...那么一开始就用 750px ,切下来是不是可以直接适配Retina屏(这也解释了为什么视觉稿画布大小要×2),当然了 375px 也行,不过此时我们处理375px设计稿时候,认为这个单位是逻辑像素...,但是有些情况却不能按逻辑像素去处理, 比如图片 ,这时候得需要设计提供·二倍 ,当然我们在375px设计稿量 细边框 高度时候,注意不要惯性觉得是1px长度,也有可能是 0.5px ,因为是 375px

1.9K10

10分钟内就可以学会几个CSS高招

所以,完全理解为什么你会讨厌 CSS,但今天,于分享是一个小课程,你将学习如何使用现代功能编写干净 CSS,同时避免在 2021 年以及未来不应该编写糟糕代码。...当学习基本 CSS ,你将更好地控制你代码创造力和自由度,直到我进入 Web 开发职业生涯后,才得到最好建议是学习 CSS 盒模型,因为当你理解它,语言开始变得更有意义,事实上它很简单,现在就教你盒子模型...2、 Firefox 很棒 这给我带来了第二个提示,在调试 CSS 不要使用 chrome,而Firefox,他们开发工具通常更胜一筹,尤其是在 CSS 方面,如果检查元素,我会像在 Chrome...3、 Flexbox 很棒 一种选择是给子元素绝对定位,然后使用 top 和 left 属性移动到右下角,然后将其转换回50%,以将其放在可以工作中心,但现代CSS有一种更好方法是 使用flexbox...Grid 允许你考虑大布局,当你将元素设置为显示网格,它对开发人员更加友好,你可以将其子项定义为一堆列和行。 ? 列宽度可以用网格模板列属性定义,我们在这里有三个值: ?

1.4K20

前端性能优化总结

(2) 内容合并、压缩: JS、CSS 文件合并、服务器开启 gzip、雪碧,通常需要借助一些工具,比如webpack进行打包,以及在线雪碧生成器 (3) 缓存: 设置http请求头Cache-Control...未来WebAssembly可能被浏览器内置支持,并使其能够直接调用DOM,Web Workers或其他浏览器API等 注意事项:同源限制、DOM 限制、不能读取本地文件、使用消息通信、不能使用alert...在离屏canvas上预渲染相似的图形或重复对象 不要在用drawImage缩放图像 使用多层画布去画一个复杂场景 用CSS设置大背景 不需要透明度关闭alpha通道 渲染画布中不同点,而非整个新状态...写法注意点: id选择器肯定是最快,但是不要在ID选择器使用同时再使用标签或类选择器了 不要使用类选择器用标签选择器 特别是for循环中js编写html代码直接定义样式类名到所需要作用元素,之后尽量用一个选择器写样式...,可以大幅提高渲染效率 如果明确dom结构,优先使用子选择器,减少后代选择器使用 使用类选择器替代后代选择器和子选择器 避免使用通配符选择器(*)和属性选择器 (2) 谨慎使用 CSS3 特性 CSS3

55030

React Native vs. Cordova、PhoneGap、Ionic,等等

本文首发于知乎,各位可以通过点击文章下方阅读原来来访问原文地址 ? 在前面的文章中,曾说过 React Native 很棒,因为它能让我们使用原生 UI 来开发应用。...这正是他们有上述好处和限制原因所在。 ? 为什么我们不能集两者之优势,同时又避免它们不足呢?这正是 React Native 要做事。 React Native 代表移动端框架第三阵营。...React Native 直接使用了原生 UI 组件,而 WebView 框架是使用 HTML/CSS Web UI 来模拟原生 UI 。真和假,你更喜欢哪个?...React Native 使用 JavaScript 来让开发变得简单 另一方面,React Native 还可以让我们使用 JavaScript 来编写应用,同时使用类似于 HTML 和 CSS 语法来开发...这无疑降低了 Web 设计师和开发人员门槛。 当需要,React Native 还提供了一种渗透到原生框架方法,以实现我们希望在应用中实现任何原生功能。这有点像在黑客帝国中打电话。 ?

3.2K40

CSS——06扩展:高级

:default">是小白 是小手 移动 <li...CSS精灵技术(sprite) 重点 5.1 为什么需要精灵技术 所示为网页请求原理,当用户访问一个网站,需要向服务器发送请求,网页上每张图像都要经过一次请求才能展现给用户。...为什么需要使用精灵技术: 为了有效地减少服务器接受和发送请求次数,提高页面的加载速度。...实际上 本质就是定位,哪一个大,如何通过定位形式把,大图里包含定位到想要位置 出现了CSS精灵技术(也称CSS Sprites、CSS雪碧)。...你就知道 css 三角是怎么来了, 做法如下: 我们用css 边框可以模拟三角效果 宽度高度为0 我们4个边框都要写, 只保留需要边框颜色,其余不能省略,都改为 transparent 透明就好了

4.7K40

移动端网页布局】移动端网页布局基础概念 ⑤ ( 视网膜屏技术 | 二倍概念 | 代码示例 )

一、视网膜屏技术 ---- PC 端 和 早期 移动端 网页中 , CSS 中配置 1 像素 对应就是物理屏幕中 1 像素 ; Retina 视网膜屏幕 技术出现后 , 将多个物理像素压缩到一块屏幕中..., 使用提高图片质量 , 解决在高清设备中使用低分辨率图片导致显示模糊问题 ; 如果要 为 100x100 像素盒子模型设置图片 , 可以 准备一张 200x200 图片 , 然后 手动将图片缩小为...在设计师创建图像,可以将图像尺寸乘以2,然后在保存图像将其命名为“@2x”,以便开发者将其用于高分辨率设备上。...这些设备 像素密度 比传统 低分辨率 设备更高,因此需要更高分辨率图像来展示清晰图像效果。 对于网页设计师和开发者来说,使用二倍可以提高图像在高分辨率设备上清晰度,并提高用户视觉体验。...在CSS使用二倍方法是,在CSS中将图像尺寸缩小50%,然后将其用作背景图像,如下所示: .image { /* 图片宽高为 100x50 像素 将其设置到 CSS 盒子模型中 盒子大小为

57340
领券