//центрируй горризонтальный скролл не меняя вертикального скрола!
function hScroll() {
var windowWidth = document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;
var contentWidth = document.getElementsByClassName('logo')[0].offsetWidth || 947;
var containerWidth = document.getElementById('container').offsetWidth || 1335;
var leftIndent = (getOffset(document.getElementsByClassName('logo')[0]).left || 205)-(windowWidth-contentWidth)/2;
//ww.innerHTML = leftIndent; // покажи ширину и запиши на страницу при изменении размера окна в блок id="ww"
if (windowWidth < contentWidth) {window.scrollTo(200, getBodyScrollTop())} else if (windowWidth > contentWidth) {window.scrollTo(leftIndent,getBodyScrollTop())};
}

function getBodyScrollTop() { // узнать вертикальный скрол
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}

function getBodyScrollLeft() { // узнать горизонтальный скрол
  return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

function getOffset(elem) { // узнать сдвиг левого верхнего угла блока относительно окна бравзера (левого верхнего угла) кроссбравзерна
  if (elem.getBoundingClientRect) { // поддерживется не всеми бравзерами
    // "правильный" вариант
    return getOffsetRect(elem)
  } else {
    // пусть работает хоть как-то - медленна, но кроссбравзерна
    return getOffsetSum(elem)
  }
}

function getOffsetSum(elem) {
  var top=0, left=0
  while(elem) {
    top = top + parseInt(elem.offsetTop)
    left = left + parseInt(elem.offsetLeft)
    elem = elem.offsetParent
  }

  return {top: top, left: left}
}

function getOffsetRect(elem) {
  // (1)
  var box = elem.getBoundingClientRect()

  // (2)
  var body = document.body
  var docElem = document.documentElement

  // (3)
  var scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop
  var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft

  // (4)
  var clientTop = docElem.clientTop || body.clientTop || 0
  var clientLeft = docElem.clientLeft || body.clientLeft || 0

  // (5)
  var top  = box.top +  scrollTop - clientTop
  var left = box.left + scrollLeft - clientLeft

  return { top: Math.round(top), left: Math.round(left) }
}
