Я потратил необходимые два часа на поиски в Google, и не могу найти хороших ответов, поэтому давайте посмотрим, смогут ли люди побить компьютеры Google.
Я хочу проанализировать таблицу стилей в Ruby, чтобы я мог применить эти стили к элементам в моем документе (чтобы сделать стили встроенными). Итак, я хочу взять что-то вроде
<style>
.mystyle {
color:white;
}
</style>
И иметь возможность извлечь его в какой-нибудь объект Нокогири.
Класс Nokogiri "CSS :: Parser" (http://nokogiri.rubyforge.org/nokogiri/Nokogiri/CSS/Parser.html), безусловно, имеет многообещающее имя, но я не могу найти никакой документации о том, что это такое или как это работает, поэтому я понятия не имею, может ли это делай то, что я после здесь.
Моя конечная цель - написать что-то вроде:
a_web_page = Nokogiri::HTML(html_page_as_string)
parsed_styles = Nokogiri::CSS.parse(html_page_as_string)
parsed_styles.each do |style|
existing_inlined_style = a_web_page.css(style.declaration) || ''
a_web_page.css(style.declaration)['css'] = existing_inlined_style + style.definition
end
Что позволило бы извлечь стили из таблицы стилей и добавить их все как встроенные стили в мой документ.