 0px; width: 0px;"><div></div></div></div>
<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : '436701229865315',
      xfbml      : true,
      version    : 'v2.5'
    });
  };

  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/ru_RU/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>
<!-- popup body -->
<div style="display: block;" class="popup-bg" id="popup_bg">

  <div style="display: block;" class="dialog-fb">

    <div style="display: block;" class="d-close"></div>

    <div class="form-block">

      <div class="top-block">
        <div class="d-header">
          <div class="d-title">
            <a class="d-fb-link">
              <img src="http://misstits.ru/wp-content/themes/Newspaper/images/fb-dialog-logo.png" alt="facebook">
            </a>
            <div class="d-message before_like">
              Нажмите <b>Нравится</b>, чтобы <br>следовать за Кукухней в Facebook
            </div>
            <div class="d-message after_like">
              "Мы рады что Вам понравилось"<br>"Присоединяйтесь к Кукухне в Facebook!"
            </div>
          </div>
        </div>
        <div class="d-social-widgets">
			<div fb-iframe-plugin-query="action=like&amp;app_id=436701229865315&amp;container_width=0&amp;href=https%3A%2F%2Fwww.facebook.com%2Fcoocook.me%2F&amp;layout=standard&amp;locale=ru_RU&amp;sdk=joey&amp;share=false&amp;show_faces=true&amp;width=300" fb-xfbml-state="rendered" class="fb-like fb_iframe_widget" data-href="https://www.facebook.com/coocook.me/" data-layout="standard" data-action="like" data-show-faces="true" data-share="false" data-width="300"><span style="vertical-align: bottom; width: 300px; height: 57px;"><iframe class="" src="http://www.facebook.com/v2.5/plugins/like.php?action=like&amp;app_id=436701229865315&amp;channel=http%3A%2F%2Fstaticxx.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D42%23cb%3Df2977f7441ccad8%26domain%3Dcoocook.me%26origin%3Dhttp%253A%252F%252Fcoocook.me%252Ff164af9d50cc956%26relation%3Dparent.parent&amp;container_width=0&amp;href=https%3A%2F%2Fwww.facebook.com%2Fcoocook.me%2F&amp;layout=standard&amp;locale=ru_RU&amp;sdk=joey&amp;share=false&amp;show_faces=true&amp;width=300" style="border: medium none; visibility: visible; width: 300px; height: 57px;" title="fb:like Facebook Social Plugin" scrolling="no" allowfullscreen="true" allowtransparency="true" name="ff2c9ff5753186" frameborder="0" height="1000px" width="300px"></iframe></span></div>

          
          </div>
        </div>
      </div>

      <div class="d-auth-link">
          <a style="display: inline;" href="#" class="d-dont-show-me">Спасибо, я уже с Кукухней!</a>
      </div>

      <div class="message-block">
        <div class="d-header">
          <div class="d-title">
            <a class="d-fb-link" href="https://www.facebook.com/coocook.me/">
              <img src="http://fithacker.ru/wp-content/themes/Newspaper/images/fb-dialog-logo.png" alt="facebook">
            </a>
            <div class="d-message">Спасибо. Кукухня стала еще вкуснее!</div>
          </div>
        </div>
      </div>
    </div>
  </div>{K2Splitter} 