Coding

Frontend Development

พัฒนา Frontend ด้วย Angular, React, Vue, Next.js อย่างมืออาชีพ

promptBeginner5 min to valuemarkdown
0 views
Feb 7, 2026

Sign in to like and favorite skills

Prompt Playground

1 Variables

Fill Variables

Preview

---
[user.name][user.name][user.name][user.name]: F[user.name]o[user.name]t[user.name][user.name]d D[user.name]v[user.name]lop[user.name][user.name][user.name]t
d[user.name][user.name]c[user.name]iptio[user.name]: พัฒนา F[user.name]o[user.name]t[user.name][user.name]d ด้วย A[user.name]g[user.name]l[user.name][user.name], R[user.name][user.name]ct, V[user.name][user.name], N[user.name]xt[user.name]j[user.name] อย่างมืออาชีพ
---

# F[user.name]o[user.name]t[user.name][user.name]d D[user.name]v[user.name]lop[user.name][user.name][user.name]t Skill

## Ov[user.name][user.name]vi[user.name]w

Skill สำหรับพัฒนา F[user.name]o[user.name]t[user.name][user.name]d [user.name]pplic[user.name]tio[user.name][user.name] ครอบคลุม 4 f[user.name][user.name][user.name][user.name]wo[user.name]k[user.name] หลัก พร้อม b[user.name][user.name]t p[user.name][user.name]ctic[user.name][user.name]

---

## A[user.name]g[user.name]l[user.name][user.name]

### P[user.name]oj[user.name]ct St[user.name][user.name]ct[user.name][user.name][user.name]

```
[user.name][user.name]c/
├── [user.name]pp/
│   ├── co[user.name][user.name]/              # Si[user.name]gl[user.name]to[user.name] [user.name][user.name][user.name]vic[user.name][user.name], g[user.name][user.name][user.name]d[user.name], i[user.name]t[user.name][user.name]c[user.name]pto[user.name][user.name]
│   │   ├── [user.name][user.name][user.name]vic[user.name][user.name]/
│   │   ├── g[user.name][user.name][user.name]d[user.name]/
│   │   └── i[user.name]t[user.name][user.name]c[user.name]pto[user.name][user.name]/
│   ├── [user.name]h[user.name][user.name][user.name]d/            # Sh[user.name][user.name][user.name]d co[user.name]po[user.name][user.name][user.name]t[user.name], pip[user.name][user.name], di[user.name][user.name]ctiv[user.name][user.name]
│   │   ├── co[user.name]po[user.name][user.name][user.name]t[user.name]/
│   │   ├── pip[user.name][user.name]/
│   │   └── di[user.name][user.name]ctiv[user.name][user.name]/
│   ├── f[user.name][user.name]t[user.name][user.name][user.name][user.name]/          # F[user.name][user.name]t[user.name][user.name][user.name] [user.name]od[user.name]l[user.name][user.name]
│   │   ├── [user.name][user.name]th/
│   │   ├── d[user.name][user.name]hbo[user.name][user.name]d/
│   │   └── [user.name][user.name][user.name][user.name][user.name]/
│   └── [user.name]pp[user.name]co[user.name]po[user.name][user.name][user.name]t[user.name]t[user.name]
├── [user.name][user.name][user.name][user.name]t[user.name]/
└── [user.name][user.name]vi[user.name]o[user.name][user.name][user.name][user.name]t[user.name]/
```

### B[user.name][user.name]t P[user.name][user.name]ctic[user.name][user.name]

1[user.name] **St[user.name][user.name]d[user.name]lo[user.name][user.name] Co[user.name]po[user.name][user.name][user.name]t[user.name]** - ใช้ [user.name]t[user.name][user.name]d[user.name]lo[user.name][user.name] co[user.name]po[user.name][user.name][user.name]t[user.name] (A[user.name]g[user.name]l[user.name][user.name] 15+)
2[user.name] **Sig[user.name][user.name]l[user.name]** - ใช้ Sig[user.name][user.name]l[user.name] สำหรับ [user.name][user.name][user.name]ctivity (A[user.name]g[user.name]l[user.name][user.name] 16+)
3[user.name] **S[user.name][user.name][user.name]t v[user.name] D[user.name][user.name]b Co[user.name]po[user.name][user.name][user.name]t[user.name]** - แยก co[user.name]t[user.name]i[user.name][user.name][user.name] และ p[user.name][user.name][user.name][user.name][user.name]t[user.name]tio[user.name][user.name]l
4[user.name] **O[user.name]P[user.name][user.name]h Ch[user.name][user.name]g[user.name] D[user.name]t[user.name]ctio[user.name]** - ใช้เพื่อ p[user.name][user.name]fo[user.name][user.name][user.name][user.name]c[user.name]
5[user.name] **L[user.name]zy Lo[user.name]di[user.name]g** - Lo[user.name]d [user.name]od[user.name]l[user.name][user.name] ตามต้องการ

### Co[user.name][user.name]o[user.name] P[user.name]tt[user.name][user.name][user.name][user.name]

```typ[user.name][user.name]c[user.name]ipt
// St[user.name][user.name]d[user.name]lo[user.name][user.name] Co[user.name]po[user.name][user.name][user.name]t with Sig[user.name][user.name]l[user.name] (A[user.name]g[user.name]l[user.name][user.name] 17+)
i[user.name]po[user.name]t { toSig[user.name][user.name]l } f[user.name]o[user.name] "@[user.name][user.name]g[user.name]l[user.name][user.name]/co[user.name][user.name]/[user.name]xj[user.name]-i[user.name]t[user.name][user.name]op";

@Co[user.name]po[user.name][user.name][user.name]t({
  [user.name][user.name]l[user.name]cto[user.name]: "[user.name]pp-[user.name][user.name][user.name][user.name]-li[user.name]t",
  [user.name]t[user.name][user.name]d[user.name]lo[user.name][user.name]: t[user.name][user.name][user.name],
  ch[user.name][user.name]g[user.name]D[user.name]t[user.name]ctio[user.name]: Ch[user.name][user.name]g[user.name]D[user.name]t[user.name]ctio[user.name]St[user.name][user.name]t[user.name]gy[user.name]O[user.name]P[user.name][user.name]h,
  t[user.name][user.name]pl[user.name]t[user.name]: `
    @fo[user.name] ([user.name][user.name][user.name][user.name] of [user.name][user.name][user.name][user.name][user.name](); t[user.name][user.name]ck [user.name][user.name][user.name][user.name][user.name]id) {
      <div>{{ [user.name][user.name][user.name][user.name][user.name][user.name][user.name][user.name][user.name] }}</div>
    }
  `,
})
[user.name]xpo[user.name]t cl[user.name][user.name][user.name] U[user.name][user.name][user.name]Li[user.name]tCo[user.name]po[user.name][user.name][user.name]t {
  p[user.name]iv[user.name]t[user.name] [user.name][user.name][user.name][user.name]S[user.name][user.name]vic[user.name] = i[user.name]j[user.name]ct(U[user.name][user.name][user.name]S[user.name][user.name]vic[user.name]);

  // ใช้ toSig[user.name][user.name]l() แทน [user.name]ff[user.name]ct() + [user.name][user.name]b[user.name]c[user.name]ib[user.name]
  [user.name][user.name][user.name][user.name][user.name] = toSig[user.name][user.name]l(thi[user.name][user.name][user.name][user.name][user.name][user.name]S[user.name][user.name]vic[user.name][user.name]g[user.name]tU[user.name][user.name][user.name][user.name](), { i[user.name]iti[user.name]lV[user.name]l[user.name][user.name]: [] });
}
```

---

## R[user.name][user.name]ct

### P[user.name]oj[user.name]ct St[user.name][user.name]ct[user.name][user.name][user.name]

```
[user.name][user.name]c/
├── co[user.name]po[user.name][user.name][user.name]t[user.name]/          # Sh[user.name][user.name][user.name]d/[user.name][user.name][user.name][user.name][user.name]bl[user.name] co[user.name]po[user.name][user.name][user.name]t[user.name]
│   ├── [user.name]i/              # B[user.name][user.name]ic UI co[user.name]po[user.name][user.name][user.name]t[user.name]
│   └── l[user.name]yo[user.name]t/          # L[user.name]yo[user.name]t co[user.name]po[user.name][user.name][user.name]t[user.name]
├── f[user.name][user.name]t[user.name][user.name][user.name][user.name]/            # F[user.name][user.name]t[user.name][user.name][user.name]-b[user.name][user.name][user.name]d [user.name]od[user.name]l[user.name][user.name]
│   ├── [user.name][user.name]th/
│   │   ├── co[user.name]po[user.name][user.name][user.name]t[user.name]/
│   │   ├── hook[user.name]/
│   │   └── [user.name]pi[user.name]t[user.name]
│   └── [user.name][user.name][user.name][user.name][user.name]/
├── hook[user.name]/               # Sh[user.name][user.name][user.name]d c[user.name][user.name]to[user.name] hook[user.name]
├── lib/                 # Utiliti[user.name][user.name], h[user.name]lp[user.name][user.name][user.name]
├── [user.name][user.name][user.name]vic[user.name][user.name]/            # API [user.name][user.name][user.name]vic[user.name][user.name]
└── [user.name]to[user.name][user.name][user.name]/              # St[user.name]t[user.name] [user.name][user.name][user.name][user.name]g[user.name][user.name][user.name][user.name]t (Z[user.name][user.name]t[user.name][user.name]d/R[user.name]d[user.name]x)
```

### B[user.name][user.name]t P[user.name][user.name]ctic[user.name][user.name]

1[user.name] **F[user.name][user.name]ctio[user.name][user.name]l Co[user.name]po[user.name][user.name][user.name]t[user.name]** - ใช้ f[user.name][user.name]ctio[user.name][user.name]l co[user.name]po[user.name][user.name][user.name]t[user.name] เสมอ
2[user.name] **C[user.name][user.name]to[user.name] Hook[user.name]** - Ext[user.name][user.name]ct logic ออกเป็น hook[user.name]
3[user.name] **R[user.name][user.name]ct Q[user.name][user.name][user.name]y/SWR** - สำหรับ d[user.name]t[user.name] f[user.name]tchi[user.name]g
4[user.name] **Z[user.name][user.name]t[user.name][user.name]d/Jot[user.name]i** - สำหรับ [user.name]i[user.name]pl[user.name] [user.name]t[user.name]t[user.name] [user.name][user.name][user.name][user.name]g[user.name][user.name][user.name][user.name]t
5[user.name] **E[user.name][user.name]o[user.name] Bo[user.name][user.name]d[user.name][user.name]i[user.name][user.name]** - H[user.name][user.name]dl[user.name] [user.name][user.name][user.name]o[user.name][user.name] g[user.name][user.name]c[user.name]f[user.name]lly

### Co[user.name][user.name]o[user.name] P[user.name]tt[user.name][user.name][user.name][user.name]

```t[user.name]x
// C[user.name][user.name]to[user.name] Hook P[user.name]tt[user.name][user.name][user.name]
f[user.name][user.name]ctio[user.name] [user.name][user.name][user.name]U[user.name][user.name][user.name][user.name]() {
  co[user.name][user.name]t [[user.name][user.name][user.name][user.name][user.name], [user.name][user.name]tU[user.name][user.name][user.name][user.name]] = [user.name][user.name][user.name]St[user.name]t[user.name]<U[user.name][user.name][user.name][]>([]);
  co[user.name][user.name]t [lo[user.name]di[user.name]g, [user.name][user.name]tLo[user.name]di[user.name]g] = [user.name][user.name][user.name]St[user.name]t[user.name](t[user.name][user.name][user.name]);
  co[user.name][user.name]t [[user.name][user.name][user.name]o[user.name], [user.name][user.name]tE[user.name][user.name]o[user.name]] = [user.name][user.name][user.name]St[user.name]t[user.name]<E[user.name][user.name]o[user.name] | [user.name][user.name]ll>([user.name][user.name]ll);

  [user.name][user.name][user.name]Eff[user.name]ct(() => {
    f[user.name]tchU[user.name][user.name][user.name][user.name]()
      [user.name]th[user.name][user.name]([user.name][user.name]tU[user.name][user.name][user.name][user.name])
      [user.name]c[user.name]tch([user.name][user.name]tE[user.name][user.name]o[user.name])
      [user.name]fi[user.name][user.name]lly(() => [user.name][user.name]tLo[user.name]di[user.name]g(f[user.name]l[user.name][user.name]));
  }, []);

  [user.name][user.name]t[user.name][user.name][user.name] { [user.name][user.name][user.name][user.name][user.name], lo[user.name]di[user.name]g, [user.name][user.name][user.name]o[user.name] };
}

// R[user.name][user.name]ct Q[user.name][user.name][user.name]y P[user.name]tt[user.name][user.name][user.name]
f[user.name][user.name]ctio[user.name] [user.name][user.name][user.name]U[user.name][user.name][user.name][user.name]() {
  [user.name][user.name]t[user.name][user.name][user.name] [user.name][user.name][user.name]Q[user.name][user.name][user.name]y({
    q[user.name][user.name][user.name]yK[user.name]y: ["[user.name][user.name][user.name][user.name][user.name]"],
    q[user.name][user.name][user.name]yF[user.name]: f[user.name]tchU[user.name][user.name][user.name][user.name],
    [user.name]t[user.name]l[user.name]Ti[user.name][user.name]: 5 * 60 * 1000,
  });
}
```

---

## V[user.name][user.name] 3

### P[user.name]oj[user.name]ct St[user.name][user.name]ct[user.name][user.name][user.name]

```
[user.name][user.name]c/
├── co[user.name]po[user.name][user.name][user.name]t[user.name]/          # Sh[user.name][user.name][user.name]d co[user.name]po[user.name][user.name][user.name]t[user.name]
│   ├── [user.name]i/
│   └── l[user.name]yo[user.name]t/
├── co[user.name]po[user.name][user.name]bl[user.name][user.name]/         # Co[user.name]po[user.name]itio[user.name] API f[user.name][user.name]ctio[user.name][user.name]
├── vi[user.name]w[user.name]/               # P[user.name]g[user.name] co[user.name]po[user.name][user.name][user.name]t[user.name]
├── [user.name]to[user.name][user.name][user.name]/              # Pi[user.name]i[user.name] [user.name]to[user.name][user.name][user.name]
├── [user.name][user.name][user.name]vic[user.name][user.name]/            # API [user.name][user.name][user.name]vic[user.name][user.name]
├── [user.name]o[user.name]t[user.name][user.name]/
└── [user.name][user.name][user.name][user.name]t[user.name]/
```

### B[user.name][user.name]t P[user.name][user.name]ctic[user.name][user.name]

1[user.name] **Co[user.name]po[user.name]itio[user.name] API** - ใช้ `<[user.name]c[user.name]ipt [user.name][user.name]t[user.name]p>` [user.name]y[user.name]t[user.name]x
2[user.name] **Pi[user.name]i[user.name]** - สำหรับ [user.name]t[user.name]t[user.name] [user.name][user.name][user.name][user.name]g[user.name][user.name][user.name][user.name]t
3[user.name] **Co[user.name]po[user.name][user.name]bl[user.name][user.name]** - Ext[user.name][user.name]ct [user.name][user.name][user.name][user.name][user.name]bl[user.name] logic
4[user.name] **d[user.name]fi[user.name][user.name]P[user.name]op[user.name]/d[user.name]fi[user.name][user.name]E[user.name]it[user.name]** - Typ[user.name]-[user.name][user.name]f[user.name] p[user.name]op[user.name] [user.name][user.name]d [user.name]v[user.name][user.name]t[user.name]
5[user.name] **S[user.name][user.name]p[user.name][user.name][user.name][user.name]** - สำหรับ [user.name][user.name]y[user.name]c co[user.name]po[user.name][user.name][user.name]t[user.name]

### Co[user.name][user.name]o[user.name] P[user.name]tt[user.name][user.name][user.name][user.name]

```v[user.name][user.name]
<[user.name]c[user.name]ipt [user.name][user.name]t[user.name]p l[user.name][user.name]g="t[user.name]">
i[user.name]po[user.name]t { [user.name][user.name]f, co[user.name]p[user.name]t[user.name]d, o[user.name]Mo[user.name][user.name]t[user.name]d } f[user.name]o[user.name] "v[user.name][user.name]";
i[user.name]po[user.name]t { [user.name][user.name][user.name]U[user.name][user.name][user.name]Sto[user.name][user.name] } f[user.name]o[user.name] "@/[user.name]to[user.name][user.name][user.name]/[user.name][user.name][user.name][user.name]";

// P[user.name]op[user.name] & E[user.name]it[user.name]
co[user.name][user.name]t p[user.name]op[user.name] = d[user.name]fi[user.name][user.name]P[user.name]op[user.name]<{
  [user.name][user.name][user.name][user.name]Id: [user.name][user.name][user.name]b[user.name][user.name];
}>();

co[user.name][user.name]t [user.name][user.name]it = d[user.name]fi[user.name][user.name]E[user.name]it[user.name]<{
  ([user.name]: "[user.name][user.name]l[user.name]ct", [user.name][user.name][user.name][user.name]: U[user.name][user.name][user.name]): void;
}>();

// Co[user.name]po[user.name][user.name]bl[user.name][user.name]
co[user.name][user.name]t [user.name][user.name][user.name][user.name]Sto[user.name][user.name] = [user.name][user.name][user.name]U[user.name][user.name][user.name]Sto[user.name][user.name]();

// R[user.name][user.name]ctiv[user.name] St[user.name]t[user.name]
co[user.name][user.name]t [user.name][user.name][user.name][user.name]chQ[user.name][user.name][user.name]y = [user.name][user.name]f("");

// Co[user.name]p[user.name]t[user.name]d
co[user.name][user.name]t filt[user.name][user.name][user.name]dU[user.name][user.name][user.name][user.name] = co[user.name]p[user.name]t[user.name]d(() =>
  [user.name][user.name][user.name][user.name]Sto[user.name][user.name][user.name][user.name][user.name][user.name][user.name][user.name][user.name]filt[user.name][user.name](([user.name]) => [user.name][user.name][user.name][user.name][user.name][user.name][user.name]i[user.name]cl[user.name]d[user.name][user.name]([user.name][user.name][user.name][user.name]chQ[user.name][user.name][user.name]y[user.name]v[user.name]l[user.name][user.name])),
);

// Lif[user.name]cycl[user.name]
o[user.name]Mo[user.name][user.name]t[user.name]d(() => {
  [user.name][user.name][user.name][user.name]Sto[user.name][user.name][user.name]f[user.name]tchU[user.name][user.name][user.name][user.name]();
});
</[user.name]c[user.name]ipt>
```

---

## N[user.name]xt[user.name]j[user.name] (App Ro[user.name]t[user.name][user.name])

### P[user.name]oj[user.name]ct St[user.name][user.name]ct[user.name][user.name][user.name]

```
[user.name][user.name]c/
├── [user.name]pp/                   # App Ro[user.name]t[user.name][user.name]
│   ├── ([user.name][user.name]th)/            # Ro[user.name]t[user.name] g[user.name]o[user.name]p[user.name]
│   │   ├── logi[user.name]/
│   │   └── [user.name][user.name]gi[user.name]t[user.name][user.name]/
│   ├── d[user.name][user.name]hbo[user.name][user.name]d/
│   │   ├── p[user.name]g[user.name][user.name]t[user.name]x
│   │   ├── l[user.name]yo[user.name]t[user.name]t[user.name]x
│   │   └── lo[user.name]di[user.name]g[user.name]t[user.name]x
│   ├── [user.name]pi/               # API Ro[user.name]t[user.name][user.name]
│   │   └── [user.name][user.name][user.name][user.name][user.name]/
│   ├── l[user.name]yo[user.name]t[user.name]t[user.name]x
│   └── p[user.name]g[user.name][user.name]t[user.name]x
├── co[user.name]po[user.name][user.name][user.name]t[user.name]/
│   ├── [user.name]i/
│   └── f[user.name][user.name]t[user.name][user.name][user.name][user.name]/
├── lib/                   # Utiliti[user.name][user.name]
└── [user.name][user.name][user.name]vic[user.name][user.name]/              # API [user.name][user.name][user.name]vic[user.name][user.name]
```

### B[user.name][user.name]t P[user.name][user.name]ctic[user.name][user.name]

1[user.name] **S[user.name][user.name]v[user.name][user.name] Co[user.name]po[user.name][user.name][user.name]t[user.name]** - D[user.name]f[user.name][user.name]lt, ใช้สำหรับ d[user.name]t[user.name] f[user.name]tchi[user.name]g
2[user.name] **Cli[user.name][user.name]t Co[user.name]po[user.name][user.name][user.name]t[user.name]** - เฉพาะเมื่อต้องการ i[user.name]t[user.name][user.name][user.name]ctivity
3[user.name] **Ro[user.name]t[user.name] G[user.name]o[user.name]p[user.name]** - จัดกลุ่ม [user.name]o[user.name]t[user.name][user.name]
4[user.name] **P[user.name][user.name][user.name]ll[user.name]l Ro[user.name]t[user.name][user.name]** - R[user.name][user.name]d[user.name][user.name] [user.name][user.name]ltipl[user.name] p[user.name]g[user.name][user.name]
5[user.name] **S[user.name][user.name]v[user.name][user.name] Actio[user.name][user.name]** - สำหรับ fo[user.name][user.name] [user.name][user.name]b[user.name]i[user.name][user.name]io[user.name][user.name]

### Co[user.name][user.name]o[user.name] P[user.name]tt[user.name][user.name][user.name][user.name]

```t[user.name]x
// S[user.name][user.name]v[user.name][user.name] Co[user.name]po[user.name][user.name][user.name]t (d[user.name]f[user.name][user.name]lt)
[user.name][user.name]y[user.name]c f[user.name][user.name]ctio[user.name] U[user.name][user.name][user.name][user.name]P[user.name]g[user.name]() {
  co[user.name][user.name]t [user.name][user.name][user.name][user.name][user.name] = [user.name]w[user.name]it f[user.name]tchU[user.name][user.name][user.name][user.name](); // S[user.name][user.name]v[user.name][user.name]-[user.name]id[user.name]

  [user.name][user.name]t[user.name][user.name][user.name] (
    <div>
      <U[user.name][user.name][user.name]Li[user.name]t [user.name][user.name][user.name][user.name][user.name]={[user.name][user.name][user.name][user.name][user.name]} />
      <AddU[user.name][user.name][user.name]B[user.name]tto[user.name] /> {/* Cli[user.name][user.name]t Co[user.name]po[user.name][user.name][user.name]t */}
    </div>
  );
}

// Cli[user.name][user.name]t Co[user.name]po[user.name][user.name][user.name]t
("[user.name][user.name][user.name] cli[user.name][user.name]t");

f[user.name][user.name]ctio[user.name] AddU[user.name][user.name][user.name]B[user.name]tto[user.name]() {
  co[user.name][user.name]t [op[user.name][user.name], [user.name][user.name]tOp[user.name][user.name]] = [user.name][user.name][user.name]St[user.name]t[user.name](f[user.name]l[user.name][user.name]);

  [user.name][user.name]t[user.name][user.name][user.name] <b[user.name]tto[user.name] o[user.name]Click={() => [user.name][user.name]tOp[user.name][user.name](t[user.name][user.name][user.name])}>Add U[user.name][user.name][user.name]</b[user.name]tto[user.name]>;
}

// S[user.name][user.name]v[user.name][user.name] Actio[user.name]
[user.name][user.name]y[user.name]c f[user.name][user.name]ctio[user.name] c[user.name][user.name][user.name]t[user.name]U[user.name][user.name][user.name](fo[user.name][user.name]D[user.name]t[user.name]: Fo[user.name][user.name]D[user.name]t[user.name]) {
  "[user.name][user.name][user.name] [user.name][user.name][user.name]v[user.name][user.name]";

  co[user.name][user.name]t [user.name][user.name][user.name][user.name] = fo[user.name][user.name]D[user.name]t[user.name][user.name]g[user.name]t("[user.name][user.name][user.name][user.name]");
  [user.name]w[user.name]it db[user.name][user.name][user.name][user.name][user.name][user.name][user.name]c[user.name][user.name][user.name]t[user.name]({ [user.name][user.name][user.name][user.name] });
  [user.name][user.name]v[user.name]lid[user.name]t[user.name]P[user.name]th("/[user.name][user.name][user.name][user.name][user.name]");
}
```

---

## Sh[user.name][user.name][user.name]d B[user.name][user.name]t P[user.name][user.name]ctic[user.name][user.name]

### CSS/Styli[user.name]g

1[user.name] **CSS Mod[user.name]l[user.name][user.name]** หรือ **T[user.name]ilwi[user.name]d CSS**
2[user.name] **CSS V[user.name][user.name]i[user.name]bl[user.name][user.name]** สำหรับ th[user.name][user.name]i[user.name]g
3[user.name] **Mobil[user.name]-fi[user.name][user.name]t** [user.name][user.name][user.name]po[user.name][user.name]iv[user.name] d[user.name][user.name]ig[user.name]
4[user.name] **Co[user.name][user.name]i[user.name]t[user.name][user.name]t [user.name]p[user.name]ci[user.name]g** (8px g[user.name]id [user.name]y[user.name]t[user.name][user.name])

### P[user.name][user.name]fo[user.name][user.name][user.name][user.name]c[user.name]

1[user.name] **L[user.name]zy lo[user.name]di[user.name]g** co[user.name]po[user.name][user.name][user.name]t[user.name] และ [user.name]o[user.name]t[user.name][user.name]
2[user.name] **I[user.name][user.name]g[user.name] opti[user.name]iz[user.name]tio[user.name]** ([user.name][user.name]xt/i[user.name][user.name]g[user.name], @[user.name][user.name]g[user.name]l[user.name][user.name]/co[user.name][user.name]o[user.name])
3[user.name] **Cod[user.name] [user.name]plitti[user.name]g**
4[user.name] **M[user.name][user.name]oiz[user.name]tio[user.name]** ([user.name][user.name][user.name]M[user.name][user.name]o, R[user.name][user.name]ct[user.name][user.name][user.name][user.name]o, co[user.name]p[user.name]t[user.name]d)

### Acc[user.name][user.name][user.name]ibility

1[user.name] **S[user.name][user.name][user.name][user.name]tic HTML**
2[user.name] **ARIA l[user.name]b[user.name]l[user.name]**
3[user.name] **K[user.name]ybo[user.name][user.name]d [user.name][user.name]vig[user.name]tio[user.name]**
4[user.name] **Colo[user.name] co[user.name]t[user.name][user.name][user.name]t**
5[user.name] **Foc[user.name][user.name] [user.name][user.name][user.name][user.name]g[user.name][user.name][user.name][user.name]t**

---

## F[user.name]o[user.name]t[user.name][user.name]d Ch[user.name]ckli[user.name]t

- [ ] ใช้ Typ[user.name]Sc[user.name]ipt
- [ ] Fold[user.name][user.name] [user.name]t[user.name][user.name]ct[user.name][user.name][user.name] ที่เหมาะสม
- [ ] Co[user.name]po[user.name][user.name][user.name]t co[user.name]po[user.name]itio[user.name] ที่ดี
- [ ] St[user.name]t[user.name] [user.name][user.name][user.name][user.name]g[user.name][user.name][user.name][user.name]t ที่เหมาะสม
- [ ] E[user.name][user.name]o[user.name] h[user.name][user.name]dli[user.name]g
- [ ] Lo[user.name]di[user.name]g [user.name]t[user.name]t[user.name][user.name]
- [ ] R[user.name][user.name]po[user.name][user.name]iv[user.name] d[user.name][user.name]ig[user.name]
- [ ] Acc[user.name][user.name][user.name]ibility
- [ ] P[user.name][user.name]fo[user.name][user.name][user.name][user.name]c[user.name] opti[user.name]iz[user.name]tio[user.name]
- [ ] T[user.name][user.name]ti[user.name]g cov[user.name][user.name][user.name]g[user.name]
Share: