2011-02-06 72 views
0

我正在開發一個網站,並且在本網站的某些頁面中有一些服務與其相關價格(我使用WordPress作爲CMS)結合使用。如何爲數字着色

我會以不同的方式全部價格顏色和我想知道,如果使用Javascript,或者乾脆利用一個特定的CSS規則存在一些自動的方式來做到這一點,例如。

另一種方法可以手動插入在所有的價格像「<span class='price'>...</span>」的HTML標記但對我來說我會壞和枯燥的方式;-)

感謝

+1

你能發佈這些價格的html嗎?我懷疑你需要手動完成它,至少應該可以在後ID中搜索這些元素,但這取決於HTML是如何格式化的。 – AJJ 2011-02-06 16:20:07

回答

1

你的HTML實際上是一團糟,事情很難追溯。每個段落似乎都有自己的div - 這是一個禁忌,p標籤存在的原因。此外,所有這些div都無法單獨標識,這意味着您永遠無法達到您需要的。

說實話,這裏最好的方法就是把這個範圍放在你找到的每一個價格上。

你總是可以追查,因爲只有他們旁邊用來價格的所有因素強勁,但它可能錯誤出在其他地方強標籤的其它用途(如果你有任何)。因爲它似乎並不像CSS有辦法找到父元素,你將不得不通過JS做到這一點反正:

var pricedivs = document.getElementsByTagName("strong"); 
for (var i = 0; i < pricedivs.length; i++) { 
    pricedivs[i].parentNode.className = "price"; 
} 

和相關的CSS:

.price { color: red; } 
.price strong { color: black; } /* We only want the text beside the strong tag, so set the style back */ 

的效果是所有圍繞具有強標記的文字的文字將被塗成紅色。

0

是否有你可以任意代碼分享,這樣我們可以看到你的情況?只要價格與其他方式分開,您可以爲其創建一個CSS條目。

此外,使用JS設置頁面格式不建議你不應該這樣做,除非你真的無法找到任何其他方式來訪問你需要的頁面的確切部分。

編輯:我想你可以做的是搜索使用JS文本中的任何數字,環繞它的是跨度。然後CSS會完成剩下的工作。但是,如果您不小心在搜索文本的位置,這可能會很昂貴,並且對於禁用了JS的任何人而言,這些數字不會顯示顏色。

0

我做一個例子。在這個頁面http://www.3jolieistitutodibellezza.it/corpo-donna/價格都在這樣的結構:

<div><strong>Polyglyco Pell:</strong> 25,00</div><div>A base di Poli Idrossiacidi e Alfa Idrossiacidi, favorisce l&#8217;eliminazione delle cellule morte, agevola il turnover cellulare, dona turgore e levigatezza</div><div>al tessuto. Indicato per pelli spesse, ipercheratosiche, favorisce la riduzione delle smagliature di recente formazione.</div> 

不使用JS也許這是不可能找到的價格和它們上色。

大概只有簡單的方法來上色的價格是添加類屬性的div包含價格容器並應用一個簡單的CSS規則。

您對此有何看法?