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在线免费,久久久夜色精品国产噜噜,亚洲精品视频在线看

          整合營銷服務(wù)商

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

          免費咨詢熱線:

          如何使用JavaScript原生方法獲取元素的背景圖片URL?

          日常開發(fā)中,我們有時候需要獲取某個元素的背景圖片URL。在本文中,我將向大家介紹如何使用JavaScript來實現(xiàn)這一需求。

          獲取元素背景圖片URL的JavaScript方法

          要獲取元素的背景圖片URL,我們可以使用getComputedStyle方法來獲取background-image的CSS屬性值。

          舉個例子,如果我們有如下HTML代碼:

          <div style="background-image:url('http://www.example.com/img.png');">...</div>

          我們可以通過以下JavaScript代碼來獲取背景圖片的URL:

          const div = document.querySelector('div');
          const style = window.getComputedStyle(div, false);
          const bi = style.backgroundImage.slice(4, -1).replace(/"/g, "");
          console.log(bi);

          下面我們來逐步解析這段代碼的實現(xiàn)原理:

          1. 選擇元素:我們使用document.querySelector方法來選擇目標(biāo)div元素。
          2. 獲取計算后的樣式:通過調(diào)用window.getComputedStyle方法并傳入選中的元素,我們可以獲取該元素的所有計算后的CSS樣式值,這些值存儲在一個對象中。
          3. 提取背景圖片URL:使用style.backgroundImage屬性可以獲取到background-image的完整值,例如url("http://www.example.com/img.png")。我們使用slice(4, -1)方法來截取字符串中的URL部分,然后通過replace(/"/g, "")方法去除字符串中的引號。

          最終,我們得到的bi變量值就是背景圖片的URL:

          'https://www.example.com/img.png'

          結(jié)束

          通過使用JavaScript中的getComputedStyle方法,我們可以輕松獲取到元素的背景圖片URL。這對于動態(tài)處理樣式或者進(jìn)行其他基于背景圖片的操作非常有幫助。

          如果你覺得本文對你有幫助,別忘了點贊并分享給更多需要的朋友!有任何問題或建議,歡迎在評論區(qū)留言,我們一起討論學(xué)習(xí)!

          想給你的網(wǎng)站進(jìn)行美化嗎?一種方法是在你的WordPress頁面上添加一個背景圖片。畢竟背景圖片是放在頁面內(nèi)容后面的圖片或設(shè)計,以美化頁面。如何給WordPress文章和頁面添加背景圖片?在WordPress網(wǎng)站上添加背景圖片有不同的方法。

          原文引用:給WordPress文章和頁面添加背景圖片圖文教程 - 搬主題

          在本圖文教程中,搬主題將介紹三種很容易做到的方法。

          一、為什么要在WordPress中添加背景圖片

          簡單地說,它們美化了你的網(wǎng)站。相對于在整個網(wǎng)站上使用普通的背景,在你的網(wǎng)站背景上顯示一個圖像會增加一些美感和專業(yè)性。

          在過去,人們試圖保持他們的網(wǎng)站設(shè)計盡可能的簡單。雖然這在當(dāng)時很有效,但后來情況發(fā)生了變化。隨著全球網(wǎng)站數(shù)量的增加,確保你在競爭中脫穎而出是很重要的。實現(xiàn)這一目標(biāo)的方法之一是改善你的網(wǎng)站設(shè)計。使用背景圖片就可以為你的WordPress網(wǎng)站做到這一點。

          二、添加背景圖片的弊端

          正如一切有優(yōu)點的事物一樣,如果使用不當(dāng),也必然會有弊端。下面我們將討論其中的一些問題。

          首先,一些背景圖片可能會出現(xiàn)在完全不合適的地方,并擾亂你的頁面內(nèi)容。這將導(dǎo)致用戶錯過你打算在你的頁面上傳遞的信息。其次,不對移動端負(fù)責(zé)的背景圖片可能會影響你網(wǎng)站的移動可用性。大多數(shù)用戶從他們的移動設(shè)備訪問互聯(lián)網(wǎng)。出于這個原因,作為一個網(wǎng)站所有者,移動友好性應(yīng)該是你最關(guān)心的問題。

          最后,如果你使用的是大文件尺寸的圖像,這可能會增加你網(wǎng)站的加載時間。因此,加載時間的增加會導(dǎo)致高跳出率,這反過來又會影響你的頁面SEO。當(dāng)然,你可以通過使用圖像壓縮插件或在上傳到你的網(wǎng)站之前簡單地在線壓縮圖像來避免這種情況。

          三、如何在你的WordPress文章和頁面上添加背景圖片

          有三種方法可以在WordPress網(wǎng)站上添加背景圖片。那就是使用默認(rèn)的主題選項、使用插件或使用自定義CSS代碼。下面,我們將告訴你如何使用它們中的每一個。

          1、默認(rèn)主題選項

          一些WordPress主題支持使用圖片作為頁面的背景。如果你的主題支持它,你可以在你的管理面板上的自定義頁面啟用它。首先登錄到你的WordPress儀表板,然后進(jìn)入外觀>>自定義。這將會出現(xiàn)WordPress主題定制器頁面。

          在右邊,你會看到你的網(wǎng)站的實時預(yù)覽和最近的變化。左邊的面板包含了你的主題所提供的各種自定義功能。要設(shè)置背景圖片,請點擊背景。

          在 "背景"菜單上,你可以使用一個圖像或顏色作為你的背景。要使用圖像,請點擊 "選擇圖像"按鈕。

          接下來,從你的WordPress媒體庫中選擇一張圖片。要上傳一個新的圖像,選擇 "上傳文件 "標(biāo)簽。然后點擊 "選擇文件",從你的電腦中選擇圖像。

          將圖像上傳到你的網(wǎng)站后,點擊選擇圖像按鈕。

          要改變圖像的大小和顯示,請點擊 "預(yù)設(shè) "下拉菜單并從可用的選項中選擇。你可以測試每個選項,以確定哪個選項對你的圖像效果最好。

          在 "圖像位置 "下,你可以選擇你想要對齊圖像的角度。當(dāng)你完成了對圖像的定制后,點擊 "發(fā)布"來實現(xiàn)這些變化。你可以訪問你網(wǎng)站上的任何一個頁面,看看背景看起來如何。

          默認(rèn)主題背景選項的弊端

          使用大多數(shù)主題提供的默認(rèn)背景選項的弊端是它沒有提供很大的靈活性和控制背景圖片在你的頁面上的外觀。此外,背景圖片是全局性的,適用于你整個網(wǎng)站的帖子和頁面。因此,如果你想為其他頁面和帖子使用不同的背景,你可能會發(fā)現(xiàn)這很困難。幸運的是,有了WordPress的添加背景圖片的插件,你在為網(wǎng)站的任何部分或頁面添加背景照片時,可以得到很大的控制和靈活性。

          2、使用WordPress插件

          如果你的主題設(shè)置中沒有添加背景圖片的選項,你可以使用一個插件來添加它。在本節(jié)中,我們將展示如何使用兩個插件來做到這一點。

          如何用Elementor在WordPress中添加背景圖片

          Elementor是WordPress最受歡迎的拖放式頁面生成器插件之一。該插件有很多功能,讓你使用交互式儀表盤建立一個完整的網(wǎng)站,而不需要寫一行代碼。

          在這里,我們將使用背景功能為WordPress網(wǎng)站上的部分添加背景圖片。要開始,你需要從你的WordPress儀表板上安裝并激活Elementor插件。

          這里可以從搬主題站點下載漢化中文版《Elementor Pro完美漢化中文版|頁面拖動自定義設(shè)計WordPress插件介紹》

          激活該插件后,你可以使用直觀的儀表盤來編輯你的WordPress文章和頁面。首先,進(jìn)入頁面>>所有頁面,然后在你想修改的頁面下面選擇編輯。

          在頁面編輯器上,點擊 "用Elementor編輯 "按鈕,打開儀表板。Elementor儀表板有很多功能,可以幫助你編輯網(wǎng)站的任何部分。你可以在 "內(nèi)容 "選項卡中添加文本、標(biāo)題、圖片、視頻等。

          假設(shè)我們想在你的頁面上的某個部分添加一個背景圖片,點擊六點圖標(biāo),突出整個部分,如下圖所示。

          在 "風(fēng)格"選項卡上,點擊背景下拉菜單。接下來,選擇鋼筆圖標(biāo),然后點擊選擇圖像。

          現(xiàn)在從你的WordPress媒體庫中選擇一張圖片或上傳一張新圖片。

          添加背景疊加

          在選擇圖像后,你可以添加一個背景覆蓋,這樣圖像就不會擾亂你的內(nèi)容。為此,點擊背景疊加下拉菜單。

          然后在 "顏色 "部分選擇你要使用的顏色。

          當(dāng)你完成添加圖像和效果后,點擊更新按鈕,保存你的變化。通過這種方法,你可以在網(wǎng)站的任何部分或頁面添加無限的背景圖片。只需選擇頁面,然后用Elementor插件編輯,添加你的背景圖片。

          Advanced WordPress Backgrounds(AWB)插件添加背景圖片

          另一個你可以用來在WordPress中添加背景圖片的插件是Advanced WordPress Backgrounds插件。除了添加背景圖片外,你還可以使用視頻作為你的背景元素。這些視頻可以來自你的媒體庫、YouTube或Vimeo視頻。

          還有一些特殊的效果,你可以應(yīng)用到你的圖片上,如視差滾動效果。在這里,我們將專注于添加一個背景圖片,但如果你想了解更多關(guān)于背景效果的信息,請查看我們關(guān)于在WordPress添加視差效果的詳細(xì)指南。要開始,你需要在你的WordPress儀表板上安裝和激活該插件。為此,進(jìn)入插件>>新增。在搜索框中,輸入 "advanced WordPress backgrounds"。接下來,點擊立即安裝按鈕,在安裝完成后激活該插件。

          如何使用AWB插件

          要使用這個插件,請進(jìn)入頁面>>所有頁面。然后在你想添加背景的頁面下面選擇編輯。

          在編輯器上,點擊添加塊圖標(biāo),然后在搜索框中輸入 "AWB"。當(dāng)它出現(xiàn)時,選擇背景(AWB)塊。

          接下來,在右側(cè)選擇你想添加的背景類型。你可以使用背景顏色、圖像或視頻。選擇 "圖像 "選項卡并點擊選擇圖像。

          之后,從你的媒體庫中選擇一張圖片。

          你可以分別使用 "尺寸 "和 "背景尺寸 "選項來改變圖像和背景的大小。添加圖片后,點擊 "更新 "按鈕,保存你的更改。如果你使用的是經(jīng)典編輯器,導(dǎo)航到你想添加背景圖片的頁面或帖子。一旦到達(dá)那里,點擊高級WordPress背景圖標(biāo)。

          在 "常規(guī) "選項卡上,點擊背景類型下拉菜單,然后選擇圖像選項。

          接下來,點擊選擇圖像按鈕,然后從你的WordPress媒體庫中選擇一個圖像。

          你也可以更新圖像的大小和位置。如果你想添加一個覆蓋層,點擊 "覆蓋顏色 "下面的 "選擇顏色"。接下來,選擇你想使用的顏色。

          而現(xiàn)在,在自定義背景圖片后,點擊插入。

          這將生成一個短碼,并自動將其插入你的編輯器中。在這個簡碼中,你可以輸入你希望在背景圖片上顯示的文字。一旦完成,點擊 "發(fā)布/更新 "按鈕就可以實現(xiàn)改變?,F(xiàn)在你可以在你的網(wǎng)站上查看該頁面,看看背景圖片的樣子。

          3、使用CSS手動添加背景圖片

          如果你是技術(shù)控,你可以使用自定義CSS代碼來為你的網(wǎng)頁和文章添加自定義背景。使用自定義CSS可以讓你對圖像的外觀和位置有很大的靈活性和控制。

          使用CSS方法,有許多背景圖片的位置可供選擇。首先,我們可以創(chuàng)建一個全局性的CSS背景圖片,它將顯示在所有頁面上。很像一些WordPress主題所提供的選項。另外,我們可以添加特定類別的背景圖片,或者創(chuàng)建一個帶有背景圖片的CSS類。然后,你可以將該類應(yīng)用于單個帖子和頁面。

          往 css 優(yōu)先級中存在的問題

          如果我們的頁面上存在非常多的樣式,譬如有我們開發(fā)頁面的時候的自定義樣式,也有引入的組件庫樣式。這時候樣式將會非?;靵y難以管理。

          當(dāng)我們想覆蓋一些本身非我們書寫的樣式時候,往往不得不通過使用優(yōu)先級權(quán)重更高的樣式名,去覆蓋那些樣式。

          同時,當(dāng)樣式優(yōu)先級感到難以控制時,開發(fā)者習(xí)慣濫用 !important 去解決,這又循環(huán)導(dǎo)致了后續(xù)更混亂的樣式結(jié)構(gòu)。

          基于讓 CSS 得到更好的控制和管理的背景,CSS @layer 應(yīng)運而生。

          何為 CSS @layer?

          CSS Cascade Layers,也叫做CSS級聯(lián)層,是Cascading and Inheritance Level5 規(guī)范中新增了一個新的 CSS 特性。

          @layer聲明了一個 級聯(lián)層, 同一層內(nèi)的規(guī)則將級聯(lián)在一起, 這給予了開發(fā)者對層疊機制的更多控制。語法也非常簡單,看這樣一個例子:

          @layer utilities {
          
            /* 創(chuàng)建一個名為 utilities 的級聯(lián)層 */
          
          }

          這樣,我們就創(chuàng)建一個名為 utilities 的 @layer 級聯(lián)層。

          @layer語法

          @layer規(guī)則可以通過三種方式其一來創(chuàng)建級聯(lián)層。第一種方法如上方代碼所示,它創(chuàng)建了一個塊級的@規(guī)則,其中包含作用于該層內(nèi)部的CSS規(guī)則。

          @layer utilities {
          
            .padding-sm {
          
              padding: .5rem;
          
            }
          
          
          
          
            .padding-lg {
          
              padding: .8rem;
          
            }
          
          }

          一個級聯(lián)層同樣可以通過 @import 來創(chuàng)建,規(guī)則存在于被引入的樣式表內(nèi):

          @import(utilities.css) layer(utilities);

          你也可以創(chuàng)建帶命名的級聯(lián)層,但不指定任何樣式。例如,單一的命名層:

          @layer utilities

          或者,多個命名層也可以被同時定義。例如:

          @layer theme, layout, utilities

          這一做法很有用,因為層最初被指定的順序決定了它是否有父級層。對于聲明而言,如果同一聲明在多個級聯(lián)層中被指定,最后一層中的將優(yōu)先于其他層。

          因此,在上面的例子中,如果 theme 層和 utilities 層中存在沖突的規(guī)則,那么 utilities 層中的將優(yōu)先被應(yīng)用。

          即使 utilities 層中規(guī)則的 優(yōu)先級低于 theme 層中的,該規(guī)則仍會被應(yīng)用。一旦級聯(lián)層順序建立之后,優(yōu)先級和出現(xiàn)順序都會被忽略。

          這將使創(chuàng)建CSS選擇器變得更加簡單,因為你不需要確保每一個選擇器都有足夠高的優(yōu)先級來覆蓋其他沖突的規(guī)則,你只需要確保它們出現(xiàn)在一個順序更靠后的級聯(lián)層中。

          :在已經(jīng)聲明級聯(lián)層的名字后,它們的順序隨即被確立,你可以重復(fù)聲明某級聯(lián)層的名字來向其添加CSS規(guī)則。這些樣式將被附加到該層的末尾,且級聯(lián)層之間的順序不會改變。

          其他不屬于任何一級聯(lián)層的樣式將被集中到同一匿名層,并置于所有層的前部,這意味著任何級聯(lián)層內(nèi)定義的規(guī)則都將覆蓋外部聲明的規(guī)則。

          嵌套層

          級聯(lián)層允許嵌套,例如:

          @layer framework {
          
            @layer layout {
          
          
          
          
            }
          
          }

          向 layout 層內(nèi)部的 framework 層附加規(guī)則,只需用 . 連接這兩層。

          @layer framework.layout {
          
            p {
          
              margin-block: 1rem;
          
            }
          
          }

          匿名層

          如果創(chuàng)建了一個級聯(lián)層但并未指定名字,例如:

          @layer {
          
            p {
          
              margin-block: 1rem;
          
            }
          
          }

          那么則稱為創(chuàng)建了一個匿名層。除創(chuàng)建后無法向其添加規(guī)則外,該層和其他命名層功能一致。

          標(biāo)準(zhǔn)語法

          @layer [ <layer-name># | <layer-name>?  {
          
            <stylesheet>
          
          } ]

          @layer如何使用

          創(chuàng)建級聯(lián)層

          級聯(lián)層可以通過多種方式聲明:

          1、使用@layer 塊規(guī)則,并立即為其分配樣式:

          @layer reset {
          
            * { /* Poor Man's Reset */
          
              margin: 0;
          
              padding: 0;
          
            }
          
          }

          2、使用規(guī)則@layer 語句,沒有指定任何樣式:

          @layer reset;

          3、將@import 與layer關(guān)鍵字或layer()函數(shù)一起使用

          @import(reset.css) layer(reset);

          以上每一個都創(chuàng)建了一個名為 的級聯(lián)層reset。

          管理級聯(lián)層

          級聯(lián)層會按它們聲明的順序排序。

          在下面的例子中,我們建立四個級聯(lián)層:reset,base,theme,和utilities。

          @layer reset { /* 創(chuàng)建級聯(lián)層 “reset” */
          
            * {
          
              margin: 0;
          
              padding: 0;
          
            }
          
          }
          
          
          
          
          @layer base { /* 創(chuàng)建級聯(lián)層 “base” */
          
            …
          
          }
          
          
          
          
          @layer theme { /* 創(chuàng)建級聯(lián)層 “theme” */
          
            …
          
          }
          
          
          
          
          @layer utilities { /* 創(chuàng)建級聯(lián)層 “utilities” */
          
            …
          
          }

          按照它們的聲明順序,層順序變?yōu)椋?/span>

          reset
          base
          theme
          utilities

          重復(fù)使用級聯(lián)層名稱時,樣式將附加到現(xiàn)有級聯(lián)層。級聯(lián)層的順序保持不變,因為只有第一次的出現(xiàn)已經(jīng)確定順序:

          @layer reset { /* 創(chuàng)建第一個級聯(lián)層 “reset” */
          
            …
          
          }
          
          
          
          
          @layer base { /* 創(chuàng)建第二個級聯(lián)層 “base” */
          
            …
          
          }
          
          
          
          
          @layer theme { /* 創(chuàng)建第三個級聯(lián)層 “theme” */
          
            …
          
          }
          
          
          
          
          @layer utilities { /* 創(chuàng)建第四個級聯(lián)層 “utilities” */
          
            …
          
          }
          
          
          
          
          @layer base { /* 會將樣式添加至級聯(lián)層“base” */
          
            …
          
          }

          重新使用級聯(lián)層名稱時層順序保持不變的使@layer 語法變得更加方便和嚴(yán)謹(jǐn)。使用它,可以預(yù)先建立圖層順序,然后將所有 CSS 附加到它:

          @layer reset;     /* 創(chuàng)建第一個級聯(lián)層 “reset” */
          
          @layer base;      /* 創(chuàng)建第二個級聯(lián)層 “base” */
          
          @layer theme;     /* 創(chuàng)建第三個級聯(lián)層“theme” */
          
          @layer utilities; /* 創(chuàng)建第四個級聯(lián)層 “utilities” */
          
          
          
          
          @layer reset { /* 添加樣式至級聯(lián)層 “reset” */
          
            …
          
          }
          
          
          
          
          @layer theme { /* 添加樣式至級聯(lián)層  “theme” */
          
            …
          
          }
          
          
          
          
          @layer base { /* 添加樣式至級聯(lián)層  “base” */
          
            …
          
          }
          
          
          
          
          @layer theme { /* 添加樣式至級聯(lián)層  “theme” */
          
            …
          
          }

          當(dāng)然你可以用更短的語法來聲明級聯(lián)層,

          @layer reset, base, theme, utilities;

          從上面可以看出,多個級聯(lián)層被聲明時,最后一個級聯(lián)層的聲明會獲勝。像這樣,

          @import(reset.css) layer(reset); /* 第一個級聯(lián)層 */
          
          
          
          
          @layer base { /* 第二個級聯(lián)層 */
          
            form input {
          
              font-size: inherit; 
          
            }
          
          }
          
          
          
          
          @layer theme { /*第三個級聯(lián)層 */
          
            input {
          
              font-size: 2rem;
          
            }
          
          }

          按以往CSS級聯(lián)來進(jìn)行分析的話,form input(多層級)的優(yōu)先級會大于input,但是由于級聯(lián)層所起的作用,@layer theme的input會取勝。

          級聯(lián)層嵌套

          級聯(lián)層支持嵌套使用,如下:

          @layer base { /* 第一個級聯(lián)層*/
          
            p { max-width: 70ch; }
          
          }
          
          
          
          
          @layer framework { /* 第二個級聯(lián)層 */
          
            @layer base { /* 第二級聯(lián)層的嵌套子級聯(lián)層1 */
          
              p { margin-block: 0.75em; }
          
            }
          
          
          
          
            @layer theme { /* 第二級聯(lián)層的嵌套子級聯(lián)層2 */
          
              p { color: #222; }
          
            }
          
          }

          在這個例子中有兩個級聯(lián)外層:

          base
          framework

          該framework層本身也包含兩層:
          base
          theme

          如果要將樣式附加到嵌套級聯(lián)層,需要使用以下全名來引用它,

          @layer framework {
          
            @layer default {
          
               p { margin-block: 0.75em; }
          
            }
          
          
          
          
            @layer theme {
          
              p { color: #222; }
          
            }
          
          }
          
          
          
          
          @layer framework.theme {
          
            /* 這些樣式會被添加到@layer framework層里面的theme層 */
          
            blockquote { color: rebeccapurple; }
          
          }

          @media與@layer

          @media (min-width: 30em) {
          
            @layer layout {
          
              .title { font-size: x-large; }
          
            }
          
          }
          
          
          
          
          @media (prefers-color-scheme: dark) {
          
            @layer theme {
          
              .title { color: white; }
          
            }
          
          }

          如果第一個@media (min-width: 30em)匹配(基于視口尺寸),則layout級聯(lián)層層將在圖層順序中排在第一位。如果只有@media (prefers-color-scheme: dark)匹配,theme則將是第一層。

          如果兩者匹配,則圖層順序?qū)閘ayout, theme。如果沒有匹配,則不定義層。


          主站蜘蛛池模板: 无码人妻久久一区二区三区 | 国产精品免费一区二区三区| 福利一区二区在线| 国产自产对白一区| 精品aⅴ一区二区三区| 在线免费视频一区二区| 国产成人精品久久一区二区三区| 视频在线观看一区二区| 好爽毛片一区二区三区四| 无码人妻aⅴ一区二区三区有奶水| 国产成人精品一区在线| 国产一区内射最近更新| 亚洲一区中文字幕久久| 能在线观看的一区二区三区| 精品国产不卡一区二区三区 | 国产一区二区不卡在线播放| 红桃AV一区二区三区在线无码AV| 国产一区二区三区在线看| 无码中文人妻在线一区二区三区| 日韩精品一区二区三区中文字幕 | 国产综合无码一区二区辣椒| 人妻无码一区二区不卡无码av| 亚洲欧美日韩一区二区三区在线| 国产精品久久久久一区二区三区| 熟妇人妻系列av无码一区二区| 日韩欧美一区二区三区免费观看| 日韩十八禁一区二区久久| 无码人妻一区二区三区免费看 | 国产91大片精品一区在线观看| 精品一区二区三区中文| 久久99精品一区二区三区| 国产精品一区二区资源| 亚洲国产精品一区二区三区在线观看| 麻豆一区二区三区蜜桃免费| 亚洲欧美日韩一区二区三区在线| 国产免费一区二区视频| 国产一区二区三区精品视频| 日本美女一区二区三区| 四虎在线观看一区二区| 日日摸夜夜添一区| 色噜噜AV亚洲色一区二区|