Жёлтый произвол браузеров (бывает и синий)

aaachilov

Новичок
Приветствую!
Кто знает как бороться с произволом браузеров - в особенности оперы. Ставит жёлтые рамки в импуты. Уже че только не делал, куда только не писал, где только не искал - никакое лекарство не помогает???
С хромом разобрался таким образом
PHP:
input, textarea {outline:none;}  
input:active, textarea:active {outline:none;} 
:focus {outline:none;}
:focus { outline: 0; }
С оперой вообще никак.....



 

флоппик

promotor fidei
Команда форума
Партнер клуба
На самом деле, бороться «с произволом» стоит очень осторожно — для тебя это произвол, а для пользователей этого браузера — привычный функционал. Убирая его, можно вызвать негодование этих пользователей.
 

aaachilov

Новичок
У меня ajax окна будут типа такого плана - и вообще не вариант получается

 

aaachilov

Новичок
Я бы ещё согласился если бы разработчики браузеров как нибудь договаривались чтоли - а то проблемы верстальщикам создают своей инициативой - одним цветом хоть сделали бы что ли, а то не каких методов воздействия через css не оставили - вот и ломай голову как и пользователей не обидеть и с дизайном что бы срослось (это так мысли вслух)

Вообще горе с этими формами - чтоб файловое поле сделать одинаковое во всех браузерах нужно аж целую операцию "Ы" провести.

Кстати сейчас на DLE посмотрел - там этих рамок нет - но не могу понять как они их убрали....
 

KorP

Новичок
если мне память не изменяет - эти рамки означают что опера для данной формы запомнила логин и пароль и по-моему это никак не фиксится вообще
 

aaachilov

Новичок
А откуда он знает что это логин и пароль - я name у все поменял - не думаю что он догадывается. А запретить браузеру запоминать значения средствами php возможно?
ведь как то делают - на этом сайте например тоже нет этих полос
 

aaachilov

Новичок
А зачем пост С. удалили?
Он меня прямо вдохновил)))
Принципиально потратил 3 часа и решил вопрос только средствами PHP.
Может конечно бредово но работает и причём универсально во всех браузерах!
Я конечно не придумал как запретить браузеру сохранять данные, но придумал как его обхитрить.


PHP:
<?php
// Получаем случайное имя для полей формы
function deceive_browser() {
    $browser = '';
    for($i=0; $i<5; $i++) {
         $browser .= chr(rand(97,122));
    }
    return $browser;
}
$dbrows = deceive_browser();
?>
// Подменяем имена полей и задаём их в виде массива
<form  method="post" action="">
 <table width="100%" border="0">   
  <tr>
  <td id="formreg">Логин:<br><input name="<?php echo $dbrows; ?>[0]" type="text" ></td>
  <td id="formreg">Пароль:<br><input name="<?php echo $dbrows; ?>[1]" type="password" ></td>
  <td id="formreg">E-mail:<br><input name="<?php echo $dbrows; ?>[2]" type="text" ></td>
   <td id="formreg"><br><input name="<?php echo $dbrows; ?>[3]" type="submit" value="Отправить" ></td>
  </tr>
</table>
</form>
<?php
// скрипт обработчик
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$u_agent = array_values($_POST);
// получаем значения и дальше делаем с ними все что хотим
$login =  $u_agent[0][0];
$password = $u_agent[0][1];
$email =  $u_agent[0][2];
}?>
В итоге браузер пусть что хочет делает но вероятность что ему попадётся вновь имя поля которое он бережно хранит думаю одна к нескольким миллионам
Я столько функций за все время не почитал наверное как щас пришлось перебрать, плохо искать, когда не знаешь что ищешь)))
Жду критики)))
 

AmdY

Пью пиво
Команда форума
то есть мой LastPass не будет работать? Значит я таким ресурсом воспользуюсь один раз, а на второй раз не вспомню пароля и найду другой ресурс.

Мне рамка не мешает, а вот если не будет работать автозаполнение в форме, то ресурсом пользоваться будет очень неудобно.
 

aaachilov

Новичок
Причём тут LastPass, пароли остаются теми же самыми, а выгрузить пароль из хранилища всегда возможно, и если мне память не изменяет он помоему даже в хроме не работает (у меня на ноуте на7 по крайней мере), единственное что не сможешь автоматом зарегится. По мне так основная часть пользователей даже не знает что такое LastPass , авторизуются по куке, нет куки нажмут напомнить пароль , если у тебя хороший интересный ресурс они даже ещё раз зарегятся, ещё думаю что основная часть знают свой пароль наизусть и ставят его почти на всех ресурсах (не все думают о безопасности, или просо о ней не догадываются),
Но это все не о той теме! Просто С. написал что средствами php это сделать нельзя и что просо пипец.
Да и тем более другого решения я не нашёл.
Автозаполнение хорошо, но рамка не хорошо
В плане неудобно согласен - но красота требует жертв - поищу ещё варианты решения этого вопроса, но пока так оставлю чтоб глаза не мозолила - все равно для себя пишу
 

AmdY

Пью пиво
Команда форума
aaachilov
LastPass у меня работает на ff, crome, ie, opera.
Но и без него у каждого браузера есть своя запоминалка, но они не могут работать, если поля у формы динамичные. Кроме запоминалки есть ещё автокомплитеры, которые помогают запоминать ввод и при нестандартных названиях они так же отваливаются.

А главное, что с рамками можно бороться просто css правилами с !important, хотя мне даже в голову такая мысль не приходила, пользователь уже привык их видеть.
 

aaachilov

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

aaachilov

Новичок
css правилами с !important
Например? Просто я с css что только не делал. но на сколько понимаю это дело на стороне клиента в браузере обводится и css не достать, конечно может ошибаюсь...
 

aaachilov

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

AmdY

Пью пиво
Команда форума
aaachilov
зайди туда где убирают и проинспекть элемент.

попробуй ещё autocomplete="off" дописать в форму или каждый элемент.
 
Сверху