Как создать функцию, которая изменяет размер текста на странице без JavaScript? - PullRequest
0 голосов
/ 14 ноября 2009

У кого-нибудь есть идеи, как создать функцию, которая динамически изменяет размер текста на странице без использования JavaScript? Я использую CMS на основе C #?

Это возможно только с CSS? если это невозможно, то я хочу сделать с javascript, как эта страница http://demo.joomla.org/1.5/?template=beez и как запасной вариант, чтобы пользовательское решение на стороне сервера, которое эта страница не имеет http://demo.joomla.org/1.5/?template=beez

Ответы [ 6 ]

1 голос
/ 14 ноября 2009

Если вы получаете размер из базы данных, вы можете сделать одну вещь: Создайте панель, поместите в нее все элементы управления и динамически установите размер.

См. Подробности ниже:
http://asp -net-example.blogspot.com / 2009/04 / как к установленной с изменением панели-шрифта size.html

1 голос
/ 14 ноября 2009

Вы можете создать 3 ссылки:

<a href="?size=medium">A</a> <a href="?size=large">A</a> <a href="?size=x-large">A</a>

Затем при обратной передаче используйте значение атрибута строки запроса 'size' в качестве значения размера шрифта CSS. что-то вроде (псевдокод)

// aspx
<div style="font-size:<%= getsize(); %>"> ...

// code behind
getsize(){
  return Request.QueryString["size"];
}
1 голос
/ 14 ноября 2009

Я думаю, что вы что-то неправильно понимаете, вам нужна функция C # для чего-то, что в основном является клиентской частью? Вы хотите сделать это после загрузки страницы или раньше? Вы можете легко изменить размер текста на странице с помощью CSS.

body{ font-size:60%; }
1 голос
/ 14 ноября 2009

без JavaScript? Ну, думаю, вам придется выполнить обратную передачу onchange, а затем выполнить изменение размера в вашем коде. Не очень удобно, хотя.

Я сомневаюсь, что CSS может сделать это.

0 голосов
/ 14 ноября 2009

Что вы хотите для запуска динамического изменения размера? Изменение размера окна? Или пользователь нажимает кнопку?

Если вы хотите изменить размер текста, когда пользователь изменяет размер окна, то нет - вы не сможете сделать это только с помощью CSS, поскольку CSS не имеет никакого способа установить размеры шрифта в зависимости от размера окна. Каждый сайт, который я видел, делает это через javascript.

Если вы хотите, чтобы триггер был нажатием кнопки, то это довольно просто - кнопка отправляет обратную передачу на сервер, вы выбираете их желаемый размер из выпадающего меню или с определенной нажатой кнопки, а затем можете добавить CSS на страницу или добавить ссылку на другую таблицу стилей.

0 голосов
/ 14 ноября 2009

Если вы ищете, скажем, 3 размера (стандартный, большой, огромный), то способ, которым я это сделал, состоит в том, чтобы создать визуальные элементы в виде кнопок ImageButtons или CSS для стилизации их под дизайн.

Затем вы можете удерживать тело {font-size: 1em;} вне включений CSS (но перед ним в разделе заголовка) внутри литерала, чтобы соблюдать настройки браузера по умолчанию. Когда происходит обратная передача, вы можете соответственно отрегулировать литерал - например, Large будет настроен на body {font-size: 1.5em}.

litFontSize.Text = "body{font-size:1.5em;}"

Вам нужно убедиться, что размер основного шрифта присутствует во всем, хотя, кросс-браузер - текст формы для одного потребует независимого определения по моему опыту.

...