614.md 1.8 KB
Newer Older
Lab机器人's avatar
readme  
Lab机器人 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
# HTML style guide

> 原文:[https://docs.gitlab.com/ee/development/fe_guide/style/html.html](https://docs.gitlab.com/ee/development/fe_guide/style/html.html)

*   [Buttons](#buttons)
    *   [Button type](#button-type)
    *   [Button role](#button-role)
*   [Links](#links)
    *   [Blank target](#blank-target)
    *   [Fake links](#fake-links)

# HTML style guide[](#html-style-guide "Permalink")

## Buttons[](#buttons "Permalink")

### Button type[](#button-type "Permalink")

按钮标记需要根据[W3C HTML 规范](https://www.w3.org/TR/2011/WD-html5-20110525/the-button-element.html#dom-button-type)`type`属性.

```
// bad
<button></button>

// good
<button type="button"></button> 
```

### Button role[](#button-role "Permalink")

如果 HTML 元素具有`onClick`处理程序但不是按钮,则应具有`role="button"` . 这[更容易访问](https://s0developer0mozilla0org.icopy.site/en-US/docs/Web/Accessibility/ARIA/Roles/button_role) .

```
// bad
<div onClick="doSomething"></div>

// good
<div role="button" onClick="doSomething"></div> 
```

## Links[](#links "Permalink")

### Blank target[](#blank-target "Permalink")

每当您的链接在新窗口中打开时,即使用`target="_blank"` ,请使用`rel="noopener noreferrer"` `target="_blank"` . 这可以防止[JitBit 记录](https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/)的安全漏洞.

```
// bad
<a href="url" target="_blank"></a>

// good
<a href="url" target="_blank" rel="noopener noreferrer"></a> 
```

### Fake links[](#fake-links "Permalink")

**不要使用虚假链接.** 如果链接仅调用 JavaScript click 事件处理程序,则使用按钮标签,这更具语义.

```
// bad
<a class="js-do-something" href="#"></a>

// good
<button class="js-do-something" type="button"></button> 
```