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视频中文字幕,精品日韩一区二区

          整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          javascript 解決子節(jié)點(diǎn)的兼容性

          javascript 解決子節(jié)點(diǎn)的兼容性

          avascript中children和childNodes的區(qū)別

          1 childNodes:它是標(biāo)準(zhǔn)屬性,它返回指定元素的子元素集合,包括HTML節(jié)點(diǎn),所有屬性,文本節(jié)點(diǎn)。

          可以通過nodeType來判斷是哪種類型的節(jié)點(diǎn),只有當(dāng)nodeType==1時(shí)才是元素節(jié)點(diǎn),2是屬性節(jié)點(diǎn),3是文本節(jié)點(diǎn)。

          有些人錯(cuò)誤的使用()去取該集合元素,下表列出各瀏覽器對(duì)childNodes(i)的支持情況:

          IE6/7/8/Safari/Chrome/Opera IE9/Firefox

          childNodes(i) 支持 不支持

          有時(shí)候需要獲取指定元素的第一個(gè)HTML子節(jié)點(diǎn)(非屬性/文本節(jié)點(diǎn)),最容易想到的就是firstChild 屬性。

          代碼中第一個(gè)HTML節(jié)點(diǎn)前如果有換行,空格,那么firstChild返回的就不是你想要的了。可以使用nodeType來判斷下。

          function getFirst(elem){
              for(var i=0,e;e=elem.childNodes[i++];){
                  if(e.nodeType==1)
                  return e;
              }
          }

          2 children:非標(biāo)準(zhǔn)屬性,它返回指定元素的子元素集合。

          但它只返回HTML節(jié)點(diǎn),甚至不返回文本節(jié)點(diǎn),雖然不是標(biāo)準(zhǔn)的DOM屬性,但它和innerHTML方法一樣,得到了幾乎所有瀏覽器的支持。

          和childNodes 一樣,在Firefox下不支持()取集合元素。因此如果想獲取指定元素的第一個(gè)HTML節(jié)點(diǎn),可以使用children[0]來替代上面的getFirst函數(shù)。

          這里需要注意的是children在IE中包含注釋節(jié)點(diǎn)。

          區(qū)別: childNodes會(huì)返回文本節(jié)點(diǎn),children不會(huì)返回文本節(jié)點(diǎn)

          以childNodes屬性為例:

          IE6-IE8版本瀏覽器不會(huì)返回文本節(jié)點(diǎn),IE9以上版本瀏覽器會(huì)返回文本節(jié)點(diǎn)

          W3C瀏覽器(包括火狐瀏覽器)會(huì)返回節(jié)點(diǎn)

          實(shí)例1:

          <html>
          <head>
          <meta charset="utf-8">
          <title>無標(biāo)題文檔</title>
          <script>
          window.onload=function ()
          {
          var oUl=document.getElementById('ul1');
          //IE6-8
          //alert(oUl.childNodes.length);
          for(var i=0;i<oUl.childNodes.length;i++)
          {
          //nodeType==3 -> 文本節(jié)點(diǎn)
          //nodeType==1 -> 元素節(jié)點(diǎn)
          //alert(oUl.childNodes[i].nodeType);
          
          if(oUl.childNodes[i].nodeType==1)
          {
          oUl.childNodes[i].style.background='red';
          }
          }
          };
          </script>
          </head>
          <body>
          <ul id="ul1">
          <li></li>
          <li></li>
          </ul>
          aaaa
          bbbb
          fafafsdfasd 文本節(jié)點(diǎn)
          <span>qwerqwre 元素節(jié)點(diǎn)</span>
          </body>
          </html>

          實(shí)例2:

          子1:(文本內(nèi)容中的連續(xù)空格)

          <p>這段文本中,輸入連續(xù)的空格          大概輸入了十個(gè)。</p>

          顯示效果:“格”和“大” 之間的是個(gè)空格顯示出來只是一個(gè)空格。

          這段文本中,輸入連續(xù)的空格 大概輸入了十個(gè)。

          例子2:(代碼之間的連續(xù)空格)

          <span>span是一個(gè)行內(nèi)標(biāo)簽</span>               <span>和前面的span元素之間隔了很多個(gè)空格</span>

          顯示效果:兩個(gè)span元素之間連續(xù)的空格,顯示出來即"簽"與“和”之間的空格,只有一個(gè)空格。

          span是一個(gè)行內(nèi)標(biāo)簽 和前面的span元素之間隔了很多個(gè)空格

          上面兩個(gè)例子證明:HTML代碼中連續(xù)的空格在顯示時(shí)會(huì)顯示為一個(gè)空格,其余的多余的空格會(huì)被移除或者說被忽略。

          段落文本其實(shí)也是HTML代碼的一部分,只不過它在p標(biāo)簽內(nèi)部,而例子2的空格是在兩個(gè)span標(biāo)簽之間。


          理解了空格,現(xiàn)在看看空行,同理

          例子3:(文本內(nèi)容中的空行)

          <p>這段文本中,輸入連續(xù)的空行
          
          
          
          
          
          大概輸入了五行。</p>

          顯示效果:如我們所見,文本代碼中的五行空行,顯示出來也只是一個(gè)空格。

          這段文本中,輸入連續(xù)的空行 大概輸入了五行。

          例子4:(元素之間/標(biāo)簽之間的空行),只要把例子2中的空格換成空行就可以了,顯示效果和例子2的一樣,多行空行都只會(huì)顯示為一個(gè)空格。

          <span>span是一個(gè)行內(nèi)標(biāo)簽</span>
          
          
          
          
          
          <span>和前面的span元素之間隔了很多空行</span>


          span是一個(gè)行內(nèi)標(biāo)簽 和前面的span元素之間隔了很多空行

          得證:HTML 代碼中的所有連續(xù)的空格或空行(換行)都會(huì)被顯示為一個(gè)空格。


          既然如此,如果我們希望擴(kuò)大兩個(gè)字符之間的間距,讓代碼中的連續(xù)空格或空行顯示出來的結(jié)果也是連續(xù)的空格或空行,那該怎么辦?其實(shí)很簡(jiǎn)單。

          方法一:我們可以用預(yù)格式化標(biāo)簽<pre>,無論是空格或空行都適用。

          <pre>
          這是
          預(yù)格式文本。
          它保留了      空格
          和換行。
          </pre>

          顯示效果

          這是
          預(yù)格式文本。
          它保留了      空格
          和換行。


          方法二:我們可以用空格實(shí)體符 代替空格,用換行標(biāo)簽<br/>代替空行。雖然這種方法可以得到我們想要的顯示效果,但是對(duì)搜索引擎不是最友好的方式,因?yàn)?和<br/>在HTML中都是沒有語義的。所以建議盡量少用。另外需要注意的是, 必須小寫,而且最后面的分號(hào)是不能省略的。


          方法三:(適合空格)使用全角空格

          全角空格被解釋為漢字,所以不會(huì)被被解釋為HTML分隔符,可以按照實(shí)際的空格數(shù)顯示。

          問題:怎么使用全角輸入法?

          以搜狗輸入法為例,我們通常使用的是半角輸入,其狀態(tài)欄中有個(gè)月亮的標(biāo)志,就說明正在使用的是半角輸入,如果是太陽的標(biāo)志,就說明使用的是全角輸入。全角/半角的切換可以通過點(diǎn)擊標(biāo)志,也可以通過快捷鍵 Shift+Space(空格符)切換。

          半角輸入(月亮)

          全角輸入(太陽)

          方法四:使用CSS樣式中字間隔屬性控制,CSS中的word-spacing 屬性可以改變字(單詞)之間的標(biāo)準(zhǔn)間隔。我們知道英文中兩個(gè)單詞之間是通過空格隔開的,所以我們視覺上可以這樣認(rèn)為,word-spacing改變了(拉長(zhǎng)或縮短)單詞之間那個(gè)空格的寬度。

          方法五:使用CSS樣式中的white-space 屬性,這個(gè)屬性聲明如何處理元素內(nèi)的空白符。

          描述

          normal

          默認(rèn)。空白會(huì)被瀏覽器忽略。

          pre

          空白會(huì)被瀏覽器保留。其行為方式類似 HTML 中的 <pre> 標(biāo)簽。

          nowrap

          文本不會(huì)換行,文本會(huì)在在同一行上繼續(xù),直到遇到 <br> 標(biāo)簽為止。

          pre-wrap

          保留空白符序列,但是正常地進(jìn)行換行。

          pre-line

          合并空白符序列,但是保留換行符。


          white-space:normal;就是正常,和不設(shè)置一樣,連續(xù)空格和空行都只會(huì)顯示一個(gè)空格。

          white-space:nowrap;不換行是什么意思呢?正常情況下,當(dāng)我們的文本超出了文本域,文本就會(huì)自動(dòng)折行,這個(gè)設(shè)置就是說不自動(dòng)折行了,而是碰到換行標(biāo)簽<br />才換

          white-space:pre;和方法一相同,將文本原樣輸出顯示。當(dāng)文本超出文本域時(shí),不換行,會(huì)產(chǎn)生滾動(dòng)條。

          white-space:pre-wrap;保留空格和空行,但當(dāng)文本超出文本域時(shí),會(huì)自動(dòng)換行。

          white-space:pre-line;連續(xù)的空格會(huì)顯示為一個(gè)空格,但保留連續(xù)的空行。

          u202f 和 \xa0 是 Unicode 字符,分別表示特定類型的空格字符。

          \u202f

          • 字符: 窄不間斷空格(Narrow No-Break Space)
          • Unicode 編碼: U+202F
          • 說明: 窄不間斷空格是一種寬度較窄的空格,通常用于需要更緊湊的間隔且不希望自動(dòng)換行的地方。這個(gè)字符在不同的排版系統(tǒng)中常用于標(biāo)點(diǎn)符號(hào)與數(shù)字之間,例如法語中的千位分隔符。

          \xa0

          • 字符: 不間斷空格(No-Break Space)
          • Unicode 編碼: U+00A0
          • 說明: 不間斷空格是一個(gè)寬度和普通空格相同但不會(huì)被用作斷行的空格。它確保了所連接的詞或字符不會(huì)被分開。這個(gè)字符在網(wǎng)頁排版中很常見,用于防止特定的詞組或數(shù)字在換行時(shí)被拆開。

          示例

          窄不間斷空格(\u202f)

          • 用法:法語中的數(shù)字分隔符,如 1?000?000(其中的空格是窄不間斷空格)。
          • 示例代碼:
          text="1\u202f000\u202f000"
          print(text)
          • 輸出:1?000?000

          不間斷空格(\xa0)

          • 用法:網(wǎng)頁設(shè)計(jì)中用于防止自動(dòng)換行,如在HTML中 。
          • 示例代碼:
          text="Hello\xa0World"
          print(text)
          • 輸出:Hello World

          這兩個(gè)字符都在排版中有特殊的用途,通過統(tǒng)一替換為普通空格,可以使文本更適合進(jìn)一步的處理和分析。


          主站蜘蛛池模板: 精彩视频一区二区| 国产免费一区二区视频| 久久精品免费一区二区| 国产伦精品一区二区免费| 亚洲一区二区三区高清在线观看| 天堂不卡一区二区视频在线观看 | 亚洲天堂一区在线| 韩国福利一区二区三区高清视频| 国产成人av一区二区三区不卡| 在线播放国产一区二区三区 | 国产情侣一区二区| 亚洲狠狠狠一区二区三区| 国产在线一区二区综合免费视频| 成人无码一区二区三区| 国产AⅤ精品一区二区三区久久| 日韩精品一区二区三区中文字幕| 精品久久综合一区二区| 日韩精品电影一区| 国产成人精品亚洲一区| 国产伦理一区二区三区| 国产综合视频在线观看一区 | 国产在线精品一区在线观看| 亚洲av成人一区二区三区观看在线 | 亚洲Av永久无码精品一区二区| 国产精品合集一区二区三区| 无码国产精品一区二区免费式影视 | 精品一区精品二区| 精品一区二区三区高清免费观看| 无码日韩人妻AV一区免费l| 一区五十路在线中出| A国产一区二区免费入口| 国产一区二区三区91| 日本片免费观看一区二区| 亚洲一区二区三区高清在线观看 | 精品日产一区二区三区手机| 一区二区三区国产精品 | 亚洲国产精品一区二区三区在线观看 | 国产一区二区在线看| 亚洲一区二区三区四区视频| 精品国产一区二区麻豆| 东京热无码一区二区三区av|