Ement常用语法、元素属性和布局标签


Ement常用语法

1.属性

  • class : .attr (默认标签是div)
  1. <!-- .attr -->
  2. <div class="attr"></div>
  • id : #attr (默认标签是div)
  1. <!-- #attr -->
  2. <div id="attr"></div>

2.标签

  • p标签
  1. <!-- p.attr -->
  2. <p class="attr"></p>

3.内容

  • {}
  1. <!-- p.attr{内容} -->
  2. <p class="attr">内容</p>

4.属性内容

  • []
  1. <!-- p[class=attr]{内容} -->
  2. <p class="attr">内容</p>

5.层级关系

  • 父子: >
  1. <!-- div>p>a -->
  2. <div>
  3. <p><a href=""></a></p>
  4. </div>
  • 兄弟: +
  1. <!-- div>p+p -->
  2. <div>
  3. <p></p>
  4. <p></p>
  5. </div>
  • 上一级: ^
  1. <!-- div>p>a^p -->
  2. <div>
  3. <p><a href=""></a></p>
  4. <p></p>
  5. </div>

6.重复

  • *
  1. <!-- ul>li*3 -->
  2. <ul>
  3. <li></li>
  4. <li></li>
  5. <li></li>
  6. </ul>

7.分组

  • ()

未分组时

  1. <!-- div.shop>h2{购物}+ul>li{商品}*3+p{共3件商品} -->
  2. <div class="shop">
  3. <h2>购物</h2>
  4. <ul>
  5. <li>商品</li>
  6. <li>商品</li>
  7. <li>商品</li>
  8. <p>共3件商品</p>
  9. </ul>
  10. </div>

分组时

  1. <!-- div.shop>h2{购物}+(ul>li{商品}*3)+p{共3件商品} -->
  2. <div class="shop">
  3. <h2>购物</h2>
  4. <ul>
  5. <li>商品</li>
  6. <li>商品</li>
  7. <li>商品</li>
  8. </ul>
  9. <p>共3件商品</p>
  10. </div>

8.序号

  • 正常序号: $
  1. <!-- ul>li{item$}*3 -->
  2. <ul>
  3. <li>item1</li>
  4. <li>item2</li>
  5. <li>item3</li>
  6. </ul>
  • 倒序: $@-n (这里是指倒数到n)
  1. <!-- ul>li{item$@-2}*3 -->
  2. <ul>
  3. <li>item4</li>
  4. <li>item3</li>
  5. <li>item2</li>
  6. </ul>
  • 从某个数开始: $@n (这里是指从n开始正数)
  1. <!-- ul>li{item$@2}*3 -->
  2. <ul>
  3. <li>item2</li>
  4. <li>item3</li>
  5. <li>item4</li>
  6. </ul>

元素属性

1.通用属性

  • class
  1. <div class="header">header</div>
  • id
  1. <div id="userId">userId</div>
  • style
  1. <div style="color: blue">颜色</div>

2.预置属性

  • 根据标签不同各不相同
  1. <a href=""></a>
  2. <img src="" alt="">
  3. <link rel="stylesheet" href="">

3.事件属性

  • 前缀 + 事件
  1. <!-- on + click-->
  2. <button onclick="alert('提交成功')">确定</button>
  3. <!-- on + input-->
  4. <div>
  5. <input type="text" oninput="this.nextElementSibling. = this.value" />
  6. <p>实时显示输入的内容</p>
  7. </div>
  • 自定义属性: data-
  1. <!-- data- + '' -->
  2. <div data-email="admin@php.cn">用户信息</div>
  3. <button onclick="this.nextElementSibling.textContent = this.previousElementSibling.dataset.email">
  4. 获取用户邮箱
  5. </button>
  6. <p>这里显示用户邮箱</p>

布局标签

1.常用布局标签

  • class
  1. <!-- 尽量不要用id,用class -->
  2. <div class="header">header</div>
  3. <div class="main">main</div>
  4. <div class="footer">footer</div>

2.语义化布局标签

  • head、main、footer...
  1. <header>header</header>
  2. <main>main</main>
  3. <footer>footer</footer>
  4. <article></article>
  5. <nav></nav>
  6. <aside></aside>

3.为什么大多数程序员,再喜欢 div + class ?

  1. 1. 目前项目90%以上是基于移动端, 不依赖或不在乎搜索引擎/seo
  2. 2. 语义化的标签数量是有限的,不如class的自定义字符串的精准

更多相关文章

  1. android pull dom解析xml
  2. Android(安卓)三角标签(自定义Textview控件)
  3. Android(安卓)使activity以模式对话框的形式弹出
  4. android lint检查出现的问题
  5. 【Android外文翻译 - 03】创建可复用的UI组件
  6. TextView 设置 Ellipsize 属性,但它不工作?
  7. Android(安卓)面试之横竖屏切换的Activity生命周期
  8. MpAndroidChart简单用法 属性总结
  9. Tabwidget- TabWidget选择标签

随机推荐

  1. Android动态部署五:如何从插件apk中启动Se
  2. Android之防快速重复点击的全局设置
  3. Android RelativeLayout(相对布局)简介
  4. android中炫酷划屏事件及sqlite全部操作D
  5. android 编译源码 错误解决
  6. Dragger android 的Activity切换动画大全
  7. android 读取properties文件
  8. 三十一、关于android camera setParamete
  9. Android 中文API (66) ―― BluetoothClass
  10. Android开发中RxJava-SQLBrite实时刷新UI