2015-01-09 58 views
0

我只是想知道是否可以編輯使用C#的網站源客戶端。就像我想改變webkit-user-select從沒有繼承。用C編輯源代碼css#

body { 
background: #000; 
color: #333; 
margin: 0; 
padding: 0; 
-webkit-user-select: none; 
} 

我想將選項添加到pageloadcomplete部分,只是不知道從哪裏開始。從來沒有這樣做。

+0

將選項添加到pageloadcomplete部分...在CSS中?錯誤的方法。 – Raptor

+0

我想在c#中編輯css而不是css。該網站不允許突出顯示文字。只是想知道是否可以修改客戶端允許。有點像chromes檢查元素。 – user3674312

回答

3

這聽起來像你想暫時修改CSS文件(我假設你的C#網站是同一個項目?),所以它呈現的方式不同,但你想從C#做到這一點怎麼樣?

如果是這樣,答案是可以的,但我不推薦它。但是您不能在ASPX WebForms頁面請求中執行此操作,因爲ASPX請求鏈接到的CSS文件中的鏈接完全是單獨的HTTP請求。相反,你將不得不編寫一個HTTP處理程序並通過它運行所有的CSS請求,手動加載CSS文件,解析它,並以某種方式確定如何以及何時修改響應。工作太多了;我不推薦它。

我認爲更簡單的解決方案是在文件中有一個額外的CSS類,它通常不會適用於您希望的元素,然後在您的ASPX頁面中呈現客戶端JavaScript,以便在頁面加載時(在客戶端),JavaScript可以將CSS類添加到您需要的元素中,以適應不同的CSS。

有很多方法可以編寫JavaScript來添加/刪除類,無論是使用庫還是使用直接代碼。谷歌搜索如何做到這一點,有很多關於通過JavaScript改變DOM元素的CSS類的基本教程。

如果上面的假設是錯誤的,並且您想要修改另一個不受控制的站點的CSS,那麼技術上的答案是肯定的,但更強調「這不值得」。您必須編寫一個完整的C#應用​​程序來加載網站及其所有資源,在加載到您使用的任何渲染器之前攔截CSS文件,編寫解析CSS並調整它的代碼等。沒有任何理由去做所有這些努力。

編寫一個瀏覽器插件來做這件事會更合理一些,但同樣的,這也是一大堆工作。

+2

對於瀏覽器插件路由,有一些插件可用作「框架」,可讓您在其上編寫工具,例如在Firefox上[Greasemonky](https://addons.mozilla.org/en-US/firefox/ addon/greasemonkey /)會讓你編寫執行和修改你想要的任何網頁的javascript,而OP想要做的事情可以很容易地通過它來完成。 –

+0

謝謝你,這是我正在尋找的信息。 – user3674312