Изменение css ссылок в учебном контенте

Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -
Количество ответов: 15

Друзья,

использую тему Formal white. Гиперссылки в ней проявляют себя только при наведении, а так сливаются с текстом и неразличимы.

Знаю, что есть возможность custom CSS, но что-то никак не пойму как правильно этим воспользоваться. Определив класс, придется править текст и везде, где встречаются гиперссылки в тексте менять класс.

Да и стоит признать, не очень силен в правильном формировании класса.

Может кто-то подсказать, помочь? Спасибо!

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

Эдуард, скажите версию Мудл, и уточните, какие именно гиперссылки нужно изменить. Они ведь разные бывают: простые (на ресурсы, элементы курса, пункты меню), автоматически создаваемые фильтрами Мудл, пользователем вручную улыбаюсь Скриншотик хорошо бы…
Попоробуем помочь.

ЗЫ: А тему оформления поменять - никак? улыбаюсь

Дочитался, если "есть возможность custom CSS", то значит - версия 2.х.

В этой теме шрифт всех ссылок черный (файлы /theme/formal_white/style/block.css, formal_white.css, quiz.css, tabs.css):

a:link {text-decoration:none;color:black;}
a:visited {text-decoration:none;color:black;}
a:hover {text-decoration:underline;color:black;}
.block_navigation .block_tree .tree_item a:link,
.block_navigation .block_tree .tree_item a:visited,
.block_navigation .block_tree .tree_item a:active {
    color:#000;
}

И так далее. В custom CSS нужно прописать всё это со своими цветами, отличными от black или #000

Вообще, кто так код пишет? В одном файле - black, в другом - #000. злюсь

В ответ на Vadim Tabunshchik

Re: Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -

Спасибо, Вадим.

Да это 2.3 версия. Прицепил образчик.

CSS гиперссылок в этом шаблоне сделан таким, как сделан ясно почему.

Это нормально работает в блоках с менюшками. Но плохо смотрится внутри учебного контента. В образце я навел на гипперсылку курсор, он стал виден. Но там виднется еще ссылки. Но их не заметишь. Я-то понимаю, что в тексте могут быть ссылки ипопробую их найти, но обучающий не всегда настолько настырен, может и не понять.

Потому хотелось бы добиться такого, чтобы в тексте ссылки были ясны и очевидны, но при это не нарушались ссылки всего шаблона.

Я вот что подумал, если в custom CSS я пропишу всё это со своими цветами, отличными от black или #000, это нарушит ссылки и в блоках, меню, навигации.

Ковырять (файлы /theme/formal_white/style/block.css, formal_white.css, quiz.css, tabs.css) мне админ не даст.

Что делать?

Спасибо

Приложение образчег.PNG
В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

Если нельзя:

  1. нарушать ссылки и в блоках, меню, навигации
  2. Ковырять (файлы /theme/formal_white/style/block.css, formal_white.css, quiz.css, tabs.css)

ТО:

  1. Что попроще: пропишите в custom CSS другой цвет шрифта основного текста, например: body {color: #663300;}
  2. возьмите Firefox+Firebug
  3. с помощью п. 2 узнайте css-стиль ссылок в нужных местах страницы
  4. пропишите свой стиль для этих ссылок в custom CSS, например:
    a.autolink.glossary:link {
    background-color: #F0F0F0;
    border-bottom: 1px dashed;
    text-decoration: none;
    color: blue;
    }
    Ссылка, автоматически созданная фильтром на термин глоссария, будет иметь такой вид: MOODLE

На заметку: правильная, имхо, статейка А. Лебедева, все бы веб-писатели руководствовались, а то только рукоблудствуют улыбаюсь

В ответ на Vadim Tabunshchik

Re: Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -

Вадим, спасибо за советы.

Смена текста шрифта body мне кажется слишком радикально.

Да я смотрел с использованием Chrome и обнаружил как оформлены css классы. По-моему они на самом верхнем уровне иерархии классов css

Вот сама строка для анализа <a target="_blank" href="http://www.oe-it.ru/edu/mod/resource/view.php?id=43">модель бизнес-процесса «<strong>Информационное обслуживание</strong>»</a>

А это соответствующий ей код css
a:hover {
text-decoration: underline;
color: black;
}
a:visited {
text-decoration: none;
color: black;
}
a:link {
text-decoration: none;
color: black;
}
a {
text-decoration: none;
}
user agent stylesheeta:-webkit-any-link {
color: -webkit-link;
text-decoration: underline;
cursor: auto;
}

Насколько я понимаю я должен сделать свой класс, но тогда при создании контента вынужден буду везде для гиперссылок помнить об этом и не забывать оформлять их должным образом.

Кстати о статье Лебедева. Не берусь судить, кто Лебедев и кто я, но оформление его блога не совсем соотвествует его же рекомендациям.

Можно пояснить 4 пункт?

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

Мы поменяли в formal_white css чёрный на синий…Этого вполне достаточно.

Правильно, Пётр, я тоже так думаю улыбаюсь

2Эдуард

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

Зачем? А свой класс в custom CSS тогда для чего Вы будете делать? Как я понял, Вам не нравится, что в текстах ресурсов ссылки сливаются с основным текстом, вот и поменяйте класс только для таких ссылок. Блоки, навигация и т. п. не будут изменены, там свои стили прописаны (см. .block_navigation .block_tree .tree_item a:link,).

Один пример я уже привёл - для автоссылок на термины глоссария. Можно изменить и "простые" веб-ссылки (типа адресов сайтов, "мыла", т. п.), и автоссылки на ресурсы/элементы_курса.

Можно пояснить 4 пункт?

Это вот этот стиль: a.autolink.glossary:link…? А что тут пояснять? Я вижу в исходном коде такую конструкцию: <a class="glossary autolink …". Вот и пишу стиль для тега а (когда он ссылка :link) класс glossary и плюс класс autolink

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Petr Zakharov -

Мы поменяли в formal_white css чёрный на синий:

a:link {text-decoration:none;color:blue;}
a:visited {text-decoration:none;color:blue;}
a:hover {text-decoration:underline;color:blue;}

Теперь в меню текст так и остался чёрным, а остальные ссылки стали синими. Этого вполне достаточно.

 

В ответ на Petr Zakharov

Re: Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -

Петр, а в каком месте вы изменили, непосредственно в css шаблона?

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -

Сделал так

.generalbox a:link {
border-bottom: 1px dashed;text-decoration:none;color:#0055CC;
}
.generalbox a:hover {
border-bottom: 0px;text-decoration:underline;color:#CC0000;
}
.generalbox a:visited {
border-bottom: 1px dashed;text-decoration:none;color:#990099;
}

удалось добиться нужного результат, единственно что, при наведении на уже посещенную ссылку, остается цвет посещенной ссылки а не карсный как в css, почему?

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

при наведении на уже посещенную ссылку, остается цвет посещенной ссылки а не карсный как в css, почему?

Потому, что Вы её уже посещали. Очистите полностью кэш браузера (историю посещений, т. п.) или зайдите с другого браузера и проверьте. Всё работает нормально.

В ответ на Vadim Tabunshchik

Re: Изменение css ссылок в учебном контенте

от Эдуард Галиаскаров -

Потому, что Вы её уже посещали

Хм, Вадим, у меня в блоге  при наведении на уже посещенную ссылку она приобретает вид, которая должна иметь при наведении на нее.

Очистите полностью кэш браузера

 

Я понимаю, что при очистке кэша все ссылки становятся не посещенными.

Проблемы конечно нет, только как-то hover странно работает, если просто link до hover то краснеет, если уже был visited, то hover только underline применяет. Почем цвет то не переопределяется?

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

Не обратил сразу внимание, Вы в custom CSS написали в таком же порядке, как выглядит в сообщении?

Тогда не соблюдено правило: "a:hover должен быть размещен после правил a:link и a:visited, так как в противном случае каскадные правила будут скрывать свойство 'color' (цвет) правила a:hover. Таким же образом, так как a:active размещен после a:hover, то активный цвет будет применяться тогда, когда пользователь одновременно активирует и наезжает на элемент a."

В ответ на Эдуард Галиаскаров

Re: Изменение css ссылок в учебном контенте

от Petr Zakharov -

у visited приоритет выше, чем у hover

перепишите так:

.generalbox a:hover {
border-bottom: 0px;text-decoration:underline;color:#CC0000 !important;
}

и всё заработает

В ответ на Petr Zakharov

Re: Изменение css ссылок в учебном контенте

от Vadim Tabunshchik -
Изображение пользователя Developers

у visited приоритет выше, чем у hover

Это правильно улыбаюсь

!important; - это НЕ нужно, лишнее, просто нужно местами поменять a:visited и a:hover. Вот так:

.generalbox a:link {
border-bottom: 1px dashed;text-decoration:none;color:#0055CC;
}
.generalbox a:visited {
border-bottom: 1px dashed;text-decoration:none;color:#990099;
}
.generalbox a:hover {
border-bottom: 0px;text-decoration:underline;color:#CC0000;>}

Приоритет выше у того стиля, кот. находится ниже в списке улыбаюсь