Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Стиль первой буквы в ссылке? [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Описание: Как изменить первую букву в ссылке?
Luam
Отправлено: 07 Апреля, 2011 - 10:47:58
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Апр. 2011  


Помог: 0 раз(а)




[quote=Hunter][/quote]

Сам так делаю и всё работает. А JS применять в данном случае извращение(ИМХО Улыбка).

Вариант что с кодом просто что-то не то и этот класс как-то не подхватывается.

ПЫСЫ. Хотя если уже воообще никак не разрешают трогать код(ужс), тогда что ж поделаешь. А обернуть первую букву спаном и уже к ней применить стиль?

(Отредактировано автором: 07 Апреля, 2011 - 10:53:13)

 
 Top
Hunter
Отправлено: 07 Апреля, 2011 - 11:43:31
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




Luam, дык как же мне ее спаном обернуть то? Движок строит код без моего участия, а в коде модулей мне копаться нельзя. в моем распоряжении тока css и два класса, ну в крайнем случае можно js файл подключить в шаблон)) да и просто в чистом документе пробовал применить first-letter к обычной ссылке - результат нулевой, я незнаю как у вас это получалось. а доктайп тут роль играет?
(Добавление)
спс, задать селектор я и сам бы смог)
 
 Top
Luam
Отправлено: 07 Апреля, 2011 - 13:55:41
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Апр. 2011  


Помог: 0 раз(а)




[quote=Hunter][/quote]

)) Естественно влияет
 
 Top
Hunter
Отправлено: 07 Апреля, 2011 - 17:13:34
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




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

index.php :
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <head>
  3. ...
  4. <link rel="stylesheet" href="css/first_letter_link.css" type="text/css" />
  5. <script src="js/first_letter_link.js"></script>
  6. ...
  7. </head>
  8.  
  9. <body onload="first_letter_link()">
  10. ...
  11. <div id="wraper">
  12.   <div id="header">
  13.     <div id="headerleft">
  14.       <div class="moduletable_kshead">
  15.         <table width="100%" border="0" cellpadding="0" cellspacing="1">
  16.           <tr>
  17.             <td nowrap="nowrap">
  18.               <a href="#" class="mainlevel_ksmhead" id="active_menu_ksmhead">link1</a>
  19.               <span class="mainlevel_ksmhead"> | </span>
  20.               <a href="#" class="mainlevel_ksmhead" >link2</a>
  21.               <span class="mainlevel_ksmhead"> | </span>
  22.               <a href="#" class="mainlevel_ksmhead" >link3</a>
  23.             </td>
  24.           </tr>
  25.         </table>               
  26.       </div>
  27.     </div>
  28.   </div>
  29. </div>
  30. ...
  31. </body>
  32.  


для всех ссылок класса "mainlevel_ksmhead" требуется изменить цвет первой буквы, например сделать красной. Просто css результата не дал (наверно что то не то с doctype). Вот функция, которая заменит цвет первых букв нужных ссылок:

css/first_letter_link.js:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function first_letter_link() {
  3.     links = document.getElementsByTagName('a');
  4.     for (var i=0; i<links.length; i++) {
  5.         if (document.getElementsByTagName('a')[i].className == "mainlevel_ksmhead") {
  6.             link = document.getElementsByTagName('a')[i].innerHTML;
  7.             link_before = link.substring(0,1);
  8.             link_after = link.substring(1);
  9.             document.getElementsByTagName('a')[i].innerHTML = '<span class="letter">' + link_before + '</span>' + link_after;
  10.         }
  11.         else {}
  12.     }  
  13. }
  14.  


правила для класса спана, которым мы обернули нужные буквы

css/first_letter_link.css:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. .letter {
  3. color: red;
  4. }
  5.  


В итоге во всех нужных ссылках первая буква красная, у остальных все осталось по умолчанию. Работает в IE, FF, O, CHR в других не проверял.




Палками не бить, я просто любитель, сделано все на скорую руку в перекурах между работой))

хочу реализовать это на экспрешенах, подскажите где поподробнее почитать.
 
 Top
Luam
Отправлено: 09 Апреля, 2011 - 16:15:01
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Апр. 2011  


Помог: 0 раз(а)




Как вариант по мне лучше скриптом добавь DOCTYPE в начало документа Улыбка и тогда всякие велики отпадают.
 
 Top
Hunter
Отправлено: 10 Апреля, 2011 - 17:10:49
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




DOCTYPE я указал, просто не стал весь код приводить)
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTML, Дизайн & CSS »


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



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB