Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产成人午夜91精品麻豆剧场,久久久久久久久66精品片,激情小视频在线

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          HTML 列表

          TML的常用列表可以分為三種:無序列表,有序列表以及定義列表。

          無序列表

          定義:<ul>...</ul> ,表示項目之間沒有順序規定的列表。

          內層標簽是 <li>...</li>,它有一個type屬性,常用的值有三種:

          • disc,實心圓點
          • circle,空心圓點(默認值)
          • square,實心方塊

          小實例:

          <ul>
           ?  <li>默認值</li><br>
           ?  <li type="disc">實心圓點</li><br>
           ?  <li type="circle">空心圓點</li><br>
           ?  <li type="square">實心方塊</li><br>
          </ul>



          有序列表

          定義:<ol>...</ol>, 相對于無序列表而言,具有一定的順序的列表,一般用數字或者是字母放在表示項目的最前端表示先后順序。

          內層標簽是 <li>...</li>,同樣它的type屬性常用值有四種:

          • type="A",按大寫字母排序
          • type="a",按小寫字母排序
          • type="I",按羅馬數字排序
          • type="1",按數字排序

          小實例:

          <ol>
           ?  <li>默認值</li><br>
           ?  <li type="A">大寫字母</li><br>
           ?  <li type="a">小寫字母</li><br>
           ?  <li type="I">羅馬數字</li><br>
           ?  <li type="1">純數字</li><br><br><br>
          </ol>



          定義列表

          定義:<dl>...</dl>,不僅僅是一列項目,還是項目及其注釋的組合。

          <dl> 標簽開始,內層標簽 <dt>...</dt> 包裹對象文本, <dd>...</dd> 包裹著解釋文本。(內層只能是 dt 和 dd 標簽,且dt 必須是在 dd 前面)

          小實例:

          <dl>
           ?  <dt>HTML</dt>
           ?  <dd>HTML稱為超文本標記語言,是一種標識性的語言。它包括一系列標簽.通過這些標簽可以將網絡上的文檔格式統一,使分散的Internet資源連接為一個邏輯整體。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字,圖形、動畫、聲音、表格、鏈接等。</dd><br>
           ?  <dt>CSS</dt>
           ?  <dd>層疊樣式表(英文全稱:Cascading Style
           ?  Sheets)是一種用來表現HTML(標準通用標記語言的一個應用)或XML(標準通用標記語言的一個子集)等文件樣式的計算機語言。CSS不僅可以靜態地修飾網頁,還可以配合各種腳本語言動態地對網頁各元素進行格式化。</dd><br>
           ?  <dt>JavaScript</dt>
           ?  <dd>JavaScript是一種直譯式腳本語言,是一種動態類型、弱類型、基于原型的語言,內置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言,最早是在HTML(標準通用標記語言下的一個應用)網頁上使用,用來給HTML網頁增加動態功能。</dd><br>
          </dl>



          動手小練習

          1. 定義一個無序列表
          2. 定義一個有序列表
          3. 定義一個定義列表
          4. 分別在無序列表和有序列表的基礎上定義不同類型的屬性值,并通過瀏覽器顯示出來

          大家分享一個html寫的俄羅斯方塊:

          源代碼如下:

          <!DOCTYPE html>

          <html>

          <head>

          <title></title>

          <style type="text/css">

          .c {

          margin: 1px;

          width: 19px;

          height: 19px;

          background: red;

          position: absolute;

          }

          .d {

          margin: 1px;

          width: 19px;

          height: 19px;

          background: gray;

          position: absolute;

          }

          .f {

          top: 0px;

          left: 0px;

          background: black;

          position: absolute;

          }

          </style>

          </head>

          <body>

          </body>

          </html>

          <script type="text/javascript">

          var over = false,

          shapes = ("0,1,1,1,2,1,3,1;1,0,1,1,1,2,2,2;2,0,2,1,2,2,1,2;0,1,1,1,1,2,2,2;1,2,2,2,2,1,3,1;1,1,2,1,1,2,2,2;0,2,1,2,1,1,2,2").split(";");

          //shapes 中的每一個元素的各個數字意2兩個一組,分別指該層移動的X,Y軸

          function create(tag, css) {

          var elm = document.createElement(tag); //創建一個tag標簽

          elm.className = css; //添加一個css樣式

          document.body.appendChild(elm); //把該標簽添加到body標簽中

          return elm;

          } //返回該標簽

          function Field(w, h) { //Field整個游戲界面的對象,沒跳動一次,就是一次刷新

          this.width = w ? w : 10;

          this.height = h ? h : 20;

          this.show = function() { //創建一個底層,游戲界面

          var f = create("div", "f")

          f.style.width = this.width * 20 + 'px';

          f.style.height = this.height * 20 + 'px';

          }

          this.check = function(shape, x, y, d) { //判斷是否到了邊緣

          var r1 = 0,

          r2 = 'GO'; //每一次所生成的4個層絕對不會存在超出左邊的同時又超出右邊,故r1只有一個

          for(var i = 0; i < 8; i += 2) {

          //循環橫坐標,查看是夠超過邊距

          if(parseInt(shape) + x < 0 && parseInt(shape) + x < r1) {

          //若向左邊移動會超出邊界

          r1 = parseInt(shape) + x;

          } else if(parseInt(shape) + x >= this.width && parseInt(shape) + x > r1) {

          //若向右移動會超出邊界

          r1 = parseInt(shape) + x;

          }

          if(parseInt(shape[i + 1]) + y >= this.height || this[parseInt(shape) + x + (parseInt(shape[i + 1]) + y) * this.width]) {

          r2 = "NO";

          }

          }

          if(d == "move" && r2 == "GO") { //當此次操作是左右移動的話,就返回移動后的橫坐標,只要沒有超出邊界,r1就肯定不為0

          return r1;

          } else if(d == "upchange" && r2 == "GO") { //當此次操作是變換形狀時

          return r1 > 0 ? r1 - this.width + 1 : r1; //其實每次移動的都是該層的很坐標,以左邊為準移動的

          } else {

          return r2;

          }

          }

          this.findFull = function() { //判斷該行是否已經滿了

          for(var h = 0; h < this.height; h++) { //循環底層的縱坐標

          var s = 0;

          for(var w = 0; w < this.width; w++) { //循環行坐標

          s += this[w + h * this.width] ? 1 : 0 //確定每個坐標點上時候有元素,以便于確定改行是否滿了

          }

          if(s == this.width) { //若改行滿了,則調用removeLine方法,一處該行的每一個元素

          this.removeLine(h);

          }

          }

          }

          //清除已經填滿的行

          this.removeLine = function(line) {

          for(var w = 0; w < this.width; w++) { //因為每個元素都是根據對象的橫縱坐標在存儲,所以需要重新循環橫坐標,以便于取出每一個元素

          document.body.removeChild(this[w + line * this.width]); //每個元素都是在body上存在著

          }

          //移除該行之后需要讓其上的每行都向下移動一行

          for(var l = line; l > 0; l--) {

          for(var i = 0; i < this.width; i++) {

          this[i + l * this.width] = this[i + (l - 1) * this.width]; //把上一行的元素付給下一行的元素()

          if(this[i + l * this.width]) {

          this[i + l * this.width].style.top = l * 20 + 'px'; //移動

          }

          }

          }

          }

          this.fixShape = function(shape, x, y) { //生成落地的方塊

          var d = new Tetris("d", shape, x, y);

          d.show();

          for(var i = 0; i < 8; i += 2) { //記錄每個變灰色的div層,只有成功到底底層的時候才記錄

          //parseInt(shape) + x 記錄的為該層的橫坐標

          //parseInt(shape[i + 1]) + y 記錄的為縱坐標

          //這樣是為了this[…]是唯一。

          this[parseInt(shape) + x + (parseInt(shape[i + 1]) + y) * this.width] = d.divs[i / 2];

          }

          }

          }

          function Tetris(c, t, x, y) {

          var c = c ? c : "c"; //若C存在,則為C,不存在,則賦值

          this.field = null;

          this.divs = [create("div", c), create("div", c), create("div", c), create("div", c)]; //調用create方法創建元素

          var ttt = t;

          this.reset = function() { //創建一個方塊

          this.x = typeof x != 'undefined' ? x : 3;

          this.y = typeof y != 'undefined' ? y : 0;

          this.shape = t ? t : (shapes[Math.floor(Math.random() * (shapes.length - 0.00001))].split(","));

          this.show();

          //當剛生的方塊就不能再向下移動的時候,游戲結束

          if(this.field && this.field.check(this.shape, this.x, this.y, "down") == "NO") {

          over = true;

          this.field.fixShape(this.shape, this.x, this.y);

          alert('game over');

          }

          }

          this.show = function() { //根據生成的方案,初始化方塊。

          for(var i = 0; i < this.divs.length; i++) {

          this.divs.style.left = (this.shape[i * 2] * 1 + this.x) * 20 + 'px';

          this.divs.style.top = (this.shape[i * 2 + 1] * 1 + this.y) * 20 + 'px';

          }

          }

          this.vMove = function() { //該方法使方塊向下移動

          if(this.field.check(this.shape, this.x, this.y + 1, "down") == "GO") { //若還能向下移動就執行

          this.y++;

          this.show();

          } else {

          this.field.fixShape(this.shape, this.x, this.y); //不能向下移動了,就生成固定的塊。

          this.field.findFull();

          this.reset();

          };

          }

          this.hMove = function(moveNo) { //該方法使方塊左右移動

          var r = this.field.check(this.shape, parseInt(this.x) + moveNo, this.y, 'move');

          if(r != 'GO' && r == 0) {

          this.x += moveNo;

          this.show();

          }

          }

          this.rotate = function() { //當按動上鍵時,改變方塊的排列方向

          var s = this.shape;

          var newShape = [3 - s[1], s[0], 3 - s[3], s[2], 3 - s[5], s[4], 3 - s[7], s[6]]; //先把坐標循環180度,然后縱橫坐標互換。

          var r = this.field.check(newShape, this.x, this.y, 'upchange'); //調用check方法,確定時候可以改變

          if(r == "NO") { return; };

          if(r == 0) { //若為0 ,則說明改變后的塊并沒有超出范圍,繼續執行

          this.shape = newShape;

          this.show();

          } else if(this.field.check(newShape, this.x - r, this.y, 'move') == 0) { //超出后,根據返回值,讓其向相應的方向移動。以保證并不會超出范圍

          this.x -= r;

          this.shape = newShape;

          this.show();

          }

          }

          this.reset();

          }

          var f = new Field();

          f.show();

          var t = new Tetris();

          t.field = f;

          t.reset();

          window.setInterval("if(!over)t.vMove();", 500); //調用向下移動的方法

          document.onkeydown = function(e) { //當按上下左右鍵時,觸發

          if(over) return;

          var e = window.event ? window.event : e;

          switch(e.keyCode) {

          case 38: //up 當按下上鍵時

          t.rotate();

          break;

          case 40: //down

          t.vMove();

          break;

          case 37: //left

          t.hMove(-1);

          break;

          case 39: //right

          t.hMove(1);

          break;

          }

          }

          </script>

          路過的朋友給個關注哦,需要打包源碼的私信小編。

          、HTML與XHTML的區別

          (1)在XHTML 中標簽名稱必須小寫,在HTML 中標簽名稱既可以小寫也可以大寫;

          (2)在XHTML 中標簽必須封閉,在HTML中標簽可以不成對出現;

          (3)在XHTML 中標簽必須嚴格嵌套,HTML對標簽嵌套沒有嚴格規定;

          (4)在XHTML 中屬性名稱必須小寫,在HTML 中也一樣;

          (5)在XHTML 中標簽必須用雙引號引起來,HTML中可以不用;

          二、特殊符號

          • 表示空格;
          • "表示雙引號;
          • &表示&符號;
          • >表示大于號>;
          • <表示小于號<;
          • &copy?表示版權符號?;

          三、列表的使用

          (1)無序列表

          • 無序列表是一個項目列表,使用項目符號標記無序列表的項目,無序列表也就是沒有順序的列表;
          • 無序列表的type屬性取值有三種,分別是circle(圓圈)、disc(實心圓點)、square(方塊);
          # 打印實心圓點的無序列表
          
          <body>
           <ul type="disc">
           <li>第一</li>
           <li>第二</li>
           <li>第三</li>
           </ul>
          </body>
          

          (2)有序列表

          • 有序列表也是由一個個列表項組成,列表想既可以使用數字標記,也可以使用字母標記;
          • 有序列表的type屬性取值有5中,分別是1(數字)、i(小寫羅馬字母)、I(大寫羅馬字母)、a(小寫字母)、A(大寫字母);
          # 打印數字排序的有序列表
          
          <body>
           <ol type="1">
           <li>我最愛椰奶</li>
           <li>第二愛可樂</li>
           <li>第三愛橙汁</li>
           </ol>
          </body>
          

          (3)定義列表

          • 定義列表是當無序列表和有序列表都不適合時,通過自定義列表來完成自定義展示,所以定義列表不僅僅是一個項目列表,而是項目和注釋的組合;
          <body>
           <dl>
           <dt>春曉</dt>
           <dd>春眠不覺曉,處處聞啼鳥</dd>
           <dd>夜來風雨聲,花落知多少</dd>
           </dl>
          </body>
          

          四、表格的使用

          (1)表格的基本結構

          • 單元格:表格的最小單位,一個或多個單元格縱橫排列組成了表格;
          • 行:一個或多個單元格橫向堆疊形成了行;
          • 列:一個或多個單元格縱向堆疊形成了列;
          <table>
           <tr>
           <td>第一行第一列</td> 
           <td>第一行第二列</td> 
           <td>第一行第三列</td> 
           </tr>
           <tr>
           <td>第二行第一列</td> 
           <td>第二行第二列</td> 
           <td>第二行第三列</td> 
           </tr>
          </table>
          

          (2)表格的對齊方式

          • align屬性:left表示水平居左、center表示水平居中、right表示水平居右;
          • valign屬性:top表示垂直置頂、middle表示垂直居中、bottom表示垂直靠底;

          (3)表格的其他屬性

          • th:一種特殊的單元格,加粗并居中;
          • caption:表格標題;
          • cellspacing:規定單元格之間的空間;
          • cellpadding:規定單元邊沿與其內容之間的空白;
          • colspan:表格跨列;
          • rowspan:表格跨行;

          主站蜘蛛池模板: 国产精品一区二区资源| 无码日韩AV一区二区三区| 日本一区二三区好的精华液| 一区二区在线免费观看| 成人毛片无码一区二区| 亚洲AV无码第一区二区三区| 色综合视频一区二区三区| 午夜DV内射一区区| 日本伊人精品一区二区三区| 亚洲日本一区二区三区在线不卡| 中文字幕一区二区三区人妻少妇| 久久久91精品国产一区二区| 婷婷国产成人精品一区二| 国产乱码精品一区二区三区四川| 亚洲精品日韩一区二区小说| 国产主播福利一区二区| 国产精品高清视亚洲一区二区| 久久久精品人妻一区二区三区| 久久精品国产免费一区| 99久久国产精品免费一区二区| 国产一在线精品一区在线观看| 久久99久久无码毛片一区二区| 国产天堂一区二区综合| 国产激情一区二区三区四区| 在线电影一区二区| 性色av无码免费一区二区三区| 亚洲av无码成人影院一区| 日本无码一区二区三区白峰美| 99在线精品一区二区三区| 亚洲AV无码国产一区二区三区| 天堂成人一区二区三区| 国产一区二区三区四| 一区 二区 三区 中文字幕| 东京热无码av一区二区| 国产一区二区电影| 亚洲宅男精品一区在线观看| 精品少妇人妻AV一区二区| 日本免费一区二区三区最新| 日本精品一区二区三区视频| av在线亚洲欧洲日产一区二区| 国产亚洲自拍一区|