#c# #html #css
#c# #HTML #css
Вопрос:
Я создаю Windows phone
приложение, которое отображает содержимое html в веб-браузере.
У меня есть файл css, в котором мне нужно изменить некоторые значения, которые находятся в специальном формате. Ниже приведен пример моих данных, где вы можете увидеть несколько '.position-page{n}-{n}'
тегов стилей, в каждом из которых есть по 3 свойства margin left ,right amp; top
.
</style><style type='text/css'>
.position-page2-1 {
margin-right: 180px;
margin-left: 180px;
margin-top: 280px;
}
.position-page2-2 {
margin-right: 350px;
margin-left: 150px;
margin-top: 20px;
}
.position-page2-3 {
margin-right: 180px;
margin-left: 220px;
margin-top: 80px;
}
.position-page2-4 {
margin-right: 180px;
margin-left: 220px;
margin-top: -20px;
}
.position-page2-5 {
margin-right: 350px;
margin-left: 140px;
margin-top: -10px;
color: #5ED6FB;
}
.page2-2 {
font-size: 20px;
text-align: justify;
line-height: 25px;
}
.page2-3 {
font-size: 15px;
text-align: justify;
line-height: 20px;
}
.page2-4 {
font-size: 15px;
text-align: justify;
line-height: 20px;
}
.page2-5 {
font-size: 20px;
text-align: justify;
line-height: 25px;
}
</style>
Мы получаем этот текст в стиле в качестве ответа от стороннего сервиса.
В соответствии с нашим требованием мне нужно уменьшить значение margin до некоторого процента. Предположим, что 150 пикселей — это поле, которое я хочу заменить на 30 пикселей, мне нужно заменить каждое значение поля на currentmargin / 5 пикселей.
Каков наилучший способ сделать это?
Комментарии:
1. Пожалуйста, добавьте больше деталей — имеете ли вы контроль над созданием файла css в первую очередь или он получен от третьей стороны? Вы создаете настольное приложение с WebBrowserControl или создаете веб-сайт, который пользователи посещают с помощью браузера?
2. В регулярных выражениях нет математики (которую вы можете использовать для поиска этого). БОЛЬШОЕ НО. Если вы можете использовать Perl, вы можете захватывать выражения регулярных выражений и использовать их для создания новой строки. Идея отсюда . Конечно, вы можете сделать то же самое на C # (снова с регулярным выражением, не нужно разбирать CSS), просто это будет дольше.
3. я создаю приложение для Windows phone, чтобы я не мог использовать perl здесь. Если я получу его с помощью регулярного выражения, это будет очень полезно.
4. @user574632 стиль взят из ответа сторонней службы. Чтобы он соответствовал нашему экрану [Windows phone], нам просто нужно отредактировать его, как сказано в вопросе.
5. В этом случае я бы рассмотрел анализатор CCS, такой как этот: github.com/TylerBrinks/ExCSS
Ответ №1:
Возможно ли для вас использовать масштаб области просмотра?
В этом случае вам вообще не следует ничего менять в css.
<meta name="viewport" content="width=320, initial-scale=1">
Вот дополнительная информация об адаптации дизайна, предоставленная Microsoft: