前端

前端模块化的十年征程

这是一篇关于前端模块化的文章,但这里并不讲新技术,而是谈一谈——历史

夫以铜为镜,可以正衣冠;以史为镜,可以知兴替 ——《旧唐书·魏徵传》

前言

也许在谈论具体的内容之前,我们需要谈论一下关键词的定义。 什么是"模块"?在不同的语境下模块有不同的含义。

但在本文中,我们从广义的角度出发,将它解释为两个方面

  • 外部的模块: 指代引入前端工程的某个外部的包(package),可能由多个JS文件组成,但会通过入口暴露给我们项目调用
  • 内部的模块: 指代我们自己的工程项目中编码的最小单元: 即单个的JS文件

模块化已经发展了有十余年了,不同的工具和轮子层出不穷,但总结起来,它们解决的问题主要有三个…

Laravel前端脚手架的完整指南

关于Laravel前端脚手架的状态,存在很多争论,戏剧性和最终的困惑。我不会关注任何戏剧-谁对谁错是不重要的。

什么重要的是确保人们理解的-相对复杂-前端脚手架的状态。初学者和经验丰富的开发人员似乎都对该前端“生态系统”的某些部分感到困惑。

因此,本文将尝试作为Laravel前端脚手架完整指南

注意:如果您只是想快速了解要使用的内容,而又不对不同解决方案的用途进行解释,请跳到文章结尾。

            

只要一行代码,实现十种 CSS 经典布局

页面布局是样式开发的第一步,也是 CSS 最重要的功能之一。

常用的页面布局,其实就那么几个。下面我会介绍5个经典布局,只要掌握了它们,就能应对绝大多数常规页面。

这几个布局都是自适应的,自动适配桌面设备和移动设备。代码实现很简单,核心代码只有一行,有很大的学习价值,内容也很实用。

        

Web Components 是什么?它为什么对我们这么重要?

摘要

先看一看未来的 WebComponent 标准,再简单了解怎么写 WebComponents,最后说说它的重要性。

简介

这篇文章简单介绍 WebComponent 标准,介绍哪些浏览器已经开始支持 WebComponents,讨论 WebComponents 能解决什么问题,以及它对 web 开发的重要性。你可以了解到如何利用 Vanilla javascript 编写一个简单的 WebComponent,我还会针对它的潜在优势分享我自己的一些拙见。…

                

jQuery性能优化指南

现在jquery应用的越来越多, 有些同学在享受爽快淋漓coding时就将性能问题忽略了,  比如我.  jquery虽在诸多的js类库中性能表现还算优秀, 但毕竟不是在用原生的javascript开发, 性能问题还是需要引起重视的. 在twitter上发现了<jQuery Performance Rules>这篇文章, 简单的摘译了一下:

  1. 总是从ID选择器开始继承
  2. 在class前使用tag
  3. 将jquery对象缓存起来
  4. 掌握强大的链式操作
  5. 使用子查询
  6. 对直接的DOM操作进行限制
  7. 冒泡
  8. 消除无效查询
  9. 推迟到 $(window).load
  10. 压缩js
  11. 全面掌握jquery库
            

我应该使用哪些媒体查询断点?

在弄清楚要使用哪些媒体查询断点之前,我们需要查看我们要设计的设备。

我已经研究了一些常见的设备分辨率,并且大多数可以分为几类。我列出了这些类别,以及它们可以满足的分辨率:

  • 移动肖像320像素至414像素)—适用于4“至6.9”屏幕的设备。
  • 移动横向(568像素至812像素)—相同,但横向。
  • 平板电脑肖像768像素至834像素)—适用于设备7“至10”
  • 平板电脑横向(1024像素至1112像素)—同上,肖像上也有12英寸平板电脑
  • 笔记本电脑和台式机显示器(1200px +)-变化很大,但通常为1200px以上

下一步:那么我们如何理解这些设备?

Head标签里面的dns-prefetch,preconnect,prefetch和prerender

开始

今天突然心血来潮想起前端性能优化的问题,这基本是老生常谈的事情了,面试随便都能说上几个,但是还是有点疑问:就是Head标签了,记忆中Head可是藏龙卧虎,各种技能都有,当然这些不可能都一一记住,太伤脑细胞了,于是打开神奇的Github,来到这个 HEAD项目,翻一翻就会看到今天的主角dns-prefetch,preconnect,prefetch和prerender兄弟了,究竟他们有何区别,是怎样的一家人尼。

    

CSS 定位详解

CSS 有两个最重要的基本属性,前端开发必须掌握:display 和 position

display属性指定网页的布局。两个重要的布局,我已经介绍过了:弹性布局flex网格布局grid

本文介绍非常有用的position属性。我希望通过10分钟的阅读,帮助大家轻松掌握网页定位,说清楚浏览器如何计算网页元素的位置,尤其是新引进的sticky定位。

 

    

响应式图像正确设置方法

响应式图像正确设置方法,代码如下:

PC,平板,手机显示良好:

我们用<picture>标签来实现同时适配不同像素密度、不同大小的屏幕。srcset属性用来指定多张图像,适应不同像素密度的屏幕。

通过 媒体查询,来为不同宽度的屏幕设置不同的图片。

其中,1x 2x 3x 代表设备像素比

通常 pc的设备像素比为1,iphone7为2,iphone7 plubs为3,一些手机为4,还有一些为1.5,3.65等非整数值。

在下面,所有的设备像素比都要用同一张图片,这样才能显示正常。…