Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Вопросы по оформлению форума » Полоса внизу форума, названия категорий, скролл и скрипт смены аватара


Полоса внизу форума, названия категорий, скролл и скрипт смены аватара

Сообщений 1 страница 7 из 7

1

Добрый день. Возникло сразу несколько проблем касаемо оформления форума.
Ссылка на форум: http://fop.anihub.ru/

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

скрин

http://ssmaker.ru/723760d9.png

http://ssmaker.ru/f7328e7d.png

2. Названия категорий вертикально выравниваются по верхнему краю, смещать текст на середину картинки пришлось вручную. И если на главной это смотрится вменяемо, то в подразделах мы имеем вот такую картину:

скрин

http://ssmaker.ru/7b6f6bf7.png

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

4. Проблема со скриптом смены имиджа (сиречь ника, статуса, аватара) в посте. Сам скрипт, надо думать, работает, но проверить это нет возможности: при клике на иконку меню появляется, но перекрывается границей форума и его нельзя использовать. Может, можно настроить так, чтобы он появлялся поверх фона форума?

скрины

http://ssmaker.ru/1a6ab2cc.png http://ssmaker.ru/a3b7bed7.png

Коды скрипта

CSS файл:

Код:
/*************************************************************
A - SETUP change_ava_nic_sta_sgn
**************************************************************/
#My.My,#stTs {
 background-color:transparent!important;
 background-image:none!important;
 border:none transparent 0!important;
}

#imgNIK-SIG {
  cursor:pointer;
  cursor:hand;
  position:absolute;
  z-index:1000;
  margin-top:  10px;
  margin-left:-30px;
  z-index:100;
  border:4px solid #676767;
}

#avtrChang-area{
 position: absolute;
 right: 1%;top: 43px;
 width:350px!important;
}

#stTs {
 display:none;/**/
 position:absolute;
 z-index:4;
 margin-top: 20px;
 margin-left:-122px;

 width:120px!important;
 height:209px;

 border-collapse: collapse;
 padding: 5px;
 text-align: left;
}

img.iblank {
  cursor:pointer;
  cursor:hand;
  border:transparent solid 1px;
  position:relative;
  width:100px;
  z-index:100;
  margin-left: -5px;
  margin-top: -1px;
  margin-right:-20px;
}
img.iblank.NIC {
  margin-top: 10px;
  height:23px
}
img.iblank.STA {
  height:20px
}
img.iblank.AVA {
  height:16px
}
img.iblank.Galleri {
  height:66px
}
img.iblank.SGN {
  height:19px
}
img.iblank.mem {
  height:34px
}
.punbb .pa-author img,
.punbb .pa-title img {
  height:auto;
  max-width:150px;
}

.post-content .hide_Nic-SIG{
  display:none;
}

JS-файл:

Код:
//======================КУКИС - ФУНКЦИЯ:"=V1.03.от 06.06.2011=============================//

// В ИЕ максимальный Объём куков на Домен = 4096.Байт

//======== Упаковка - ужатие encodeURIComponent ==============================//

function pakCodeURI (sPak) { //alert("Длина входной URI-строки >"+sPak.length)
	sPak=sPak.replace(/^([^%])/g,"<$1");//alert(sPak)
	sPak=sPak.replace(/(%(?:[\d]|[A-F]){2})(?!%)/mg,"$1<");
	sPak=sPak.replace(/(<[^%<]+)/mg,"$1>");//alert(sPak)

	//alert("<Англ. Текст> Выделен="+ sPak.length)//alert(sPak)

	sPak=sPak.replace(/%D0/mg,"%G");	sPak=sPak.replace(/%D1/mg,"%b");
	sPak=sPak.replace(/%20/mg,"%c");	sPak=sPak.replace(/%B0/mg,"%d");
	sPak=sPak.replace(/%BE/mg,"%e");	sPak=sPak.replace(/%80/mg,"%f");
	sPak=sPak.replace(/%81/mg,"%g");	sPak=sPak.replace(/%82/mg,"%h");
	sPak=sPak.replace(/%83/mg,"%i");	sPak=sPak.replace(/%BD/mg,"%j");

	sPak=sPak.replace(/%B5/mg,"%k");	sPak=sPak.replace(/%B8/mg,"%m");
	sPak=sPak.replace(/%BB/mg,"%n");	sPak=sPak.replace(/%B1/mg,"%o");
	sPak=sPak.replace(/%BA/mg,"%p");	sPak=sPak.replace(/%BE/mg,"%q");
	sPak=sPak.replace(/%B9/mg,"%r");	sPak=sPak.replace(/%BF/mg,"%s");
	sPak=sPak.replace(/%8B/mg,"%t");	sPak=sPak.replace(/%2C/mg,"%u");

	sPak=sPak.replace(/%B2/mg,"%v");	sPak=sPak.replace(/%B4/mg,"%w");
	sPak=sPak.replace(/%8F/mg,"%x");	sPak=sPak.replace(/%09/mg,"%y");
	sPak=sPak.replace(/%G%e%b/mg,"%H");	sPak=sPak.replace(/%G%e%G/mg,"%Y");
	sPak=sPak.replace(/%G%m%G/mg,"%I");	sPak=sPak.replace(/%G%j%b%t/mg,"%J");
	sPak=sPak.replace(/%G%j%u/mg,"%K");	sPak=sPak.replace(/%G%j/mg,"%L");

	sPak=sPak.replace(/%G%k/mg,"%M");	sPak=sPak.replace(/%G%d/mg,"%N");
 	sPak=sPak.replace(/%G%9/mg,"%O");	sPak=sPak.replace(/%M%N%K/mg,"%P");
 	sPak=sPak.replace(/%G%A/mg,"%R");	sPak=sPak.replace(/%G%s/mg,"%S");
 	sPak=sPak.replace(/%G%m/mg,"%T");	sPak=sPak.replace(/%G%r/mg,"%X");
 	sPak=sPak.replace(/%b%f/mg,"%U");	sPak=sPak.replace(/%b%h/mg,"%W");

 	sPak=sPak.replace(/%M%G/mg,"%Z");	sPak=sPak.replace(/%b%8/mg,"%V");
 	sPak=sPak.replace(/%G%B/mg,"%&");	sPak=sPak.replace(/%u%O/mg,"%#");
 	sPak=sPak.replace(/%G%v/mg,"%a");	sPak=sPak.replace(/%b%g/mg,"%z");
 	sPak=sPak.replace(/%&C/mg,"%]");

	//alert("2(До % delete > "+sPak.length)//alert(sPak)
	sPak=sPak.replace(/%/mg,"");//alert("Ужатие URI>"+sPak.length)//alert(">>>"+sPak)
 return sPak;

 } //End/Упаковка - ужатие encodeURIComponent
//======== Распаковка Ужатого encodeURIComponent ==================
function unpakCodeURI (str_unpak) {//alert("function unpakCodeURI"+str_unpak)

	str_unpak=str_unpak.replace(/(^(?:[^<>]+)(?:<|$))|(>(?:[^<>]+)(?:<|$))/mg,function(a,b,c) {
	//alert("a23="+a)

	a=a.replace(/\]/g,"&C");	a=a.replace(/z/g,"bg");
	a=a.replace(/a/g,"Gv");a=a.replace(/#/g,"uO");
	a=a.replace(/&/g,"GB");a=a.replace(/\V/g,"b8");
	a=a.replace(/Z/g,"MG");

	a=a.replace(/W/g,"bh");a=a.replace(/U/g,"bf");
	a=a.replace(/X/g,"Gr");a=a.replace(/T/g,"Gm");	
	a=a.replace(/S/g,"Gs");a=a.replace(/R/g,"GA");
	a=a.replace(/P/g,"MNK");	a=a.replace(/O/g,"G9");
	a=a.replace(/N/g,"Gd");a=a.replace(/M/g,"Gk");

	a=a.replace(/L/g,"Gj");a=a.replace(/K/g,"Gju");
	a=a.replace(/J/g,"Gjbt");	a=a.replace(/I/g,"GmG");
	a=a.replace(/Y/g,"GeG");	a=a.replace(/H/g,"Geb");
	a=a.replace(/y/g,"09");a=a.replace(/x/g,"8F");	
	a=a.replace(/w/g,"B4");a=a.replace(/v/g,"B2");	

	a=a.replace(/u/g,"2C");a=a.replace(/t/g,"8B");	
	a=a.replace(/s/g,"BF");a=a.replace(/r/g,"B9");	
	a=a.replace(/q/g,"BE");a=a.replace(/p/g,"BA");	
	a=a.replace(/o/g,"B1");a=a.replace(/n/g,"BB");	
	a=a.replace(/m/g,"B8");a=a.replace(/k/g,"B5");	

	a=a.replace(/j/g,"BD");a=a.replace(/i/g,"83");	
	a=a.replace(/h/g,"82");a=a.replace(/g/g,"81");	
	a=a.replace(/f/g,"80");a=a.replace(/e/g,"BE");	
	a=a.replace(/d/g,"B0");a=a.replace(/c/g,"20");	
	a=a.replace(/b/g,"D1");a=a.replace(/G/g,"D0");

	a=a.replace(/([^%]*?)((?:[\d]|[A-F]){2})/g,"$1%$2");//
	//alert("T0 "+a.length)//alert("a0="+a)
   return a;});

	str_unpak=str_unpak.replace(/<|>/gm,""); 

	//alert("URI-Code >"+str_unpak.length)//alert(str_unpak)

 return decodeURIComponent(str_unpak);

} // End/Распаковка для(decodeURIComponent) ужатого encodeURIComponent==//


//================= БИБЛИОТЕКА КУКИСОВ  ============== //

	// Библиотека для кукисов
function setCookie3(name, value, expires, path, domain, secure) {
	if (!name || !value) return false; //alert("HELLO>>"+value)
	var today = new Date();
	today.setTime( today.getTime() );
        var expires_date = new Date( today.getTime() + (expires) );
	value = encodeURIComponent(value);
	if (value.length > 1000) value="1$"+pakCodeURI(value);

var str = encodeURIComponent(name) + '=' + value;//alert(value)

	if (expires) str += '; expires=' + expires_date.toGMTString();
	if (path)    str += '; path=' + path;
	if (domain)  str += '; domain=' + domain;
	if (secure)  str += '; secure';
	
	document.cookie = str;
	return true;
}

function getCookie3(name) {
        name= encodeURIComponent(name)
	var pattern = "(?:; )?" + name + "=([^;]*);?";
	var regexp  = new RegExp(pattern,"g");
	if (regexp.test(document.cookie)){
	NumPak = RegExp["$1"].replace(/^((?:\d{1,2})\$)?([^\$]*)$/g,"$1")
	if(NumPak == "1$" ) return unpakCodeURI(RegExp["$2"]);
	return decodeURIComponent(RegExp["$2"])
	}
	return false
}
function deleteCookie3( name, path, domain ) {

	if ( getCookie3( name ) ) name= encodeURIComponent(name);document.cookie = name + '=' +
	( ( path ) ? ';path=' + path : '') +
	( ( domain ) ? ';domain=' + domain : '' ) +
	';expires=Thu, 01-Jan-1970 00:00:01 GMT';
 }

function testNumLast(str, trp) {	    //test не цифры(или конца строки) за последней цифрой
    var s=str.lastIndexOf(trp);if(s!=-1){var s=str.substring(s+trp.length,s+trp.length+1);
    if (s.search(/\d/gi)==-1){return true}else {return false};}else {return false}

 }  	//End//Библиотека Кукисов

/******************************************************************************************
******************************************************************************************/

//%%%%%%%%%% ОБСЛУЖИВАНИЕ BB-ТЕГОВ В ПОСТАХ И ФОРМЕ ОТВЕТА %%%%%%%%%%%%%%%%%%%%%%%%%%%%%//

//========ФУНКЦИЯ Проверки и Установки Допуска к функции смены НИКА,СТАТУСА,ПОДПИСИ. ======//

	var Dopusk=0,DopuskList = new Array();

 function OnSmenaImage(RazdeL,myarray){

        st = document.getElementById("pun-crumbs1").innerHTML;
        if($("#navlogin").html()!=null){UserLogin = " "};
        if (st.indexOf(RazdeL)!= -1){Dopusk = 1;
        for(q=0;q<myarray.length;q++){
 	DopuskList.push(myarray[q]);
	if (myarray[q]== UserLogin)Dopusk = 0;}
	}
 }
//======= end OnSmenaImage(RazdeL,myarray){}


/******************************************************************************************
ТЕЛО ОСНОВНОЙ ФУНЦИИ
******************************************************************************************/

function StartNIZ(){



  //======= Обслуживание BB-Тегов в Постах =====================//

var SkL="\\[",SkR="\\]";
var patt = new Array()
  patt[0] = SkL + "NIC" + SkR + "([^" + SkL + SkR + "$]+)" + SkL + "/NIC" + SkR;
  patt[1] = SkL + "STA" + SkR + "([^" + SkL + SkR + "$]+)" + SkL + "/STA" + SkR;
  patt[2] = SkL + "AVA" + SkR + "([^" + SkL + SkR + "$]+)" + SkL + "/AVA" + SkR;
  patt[3] = SkL + "SGN" + SkR + "([^" + SkL + SkR + "]+)" + SkL + "/SGN" + SkR;

 $(".post-content").each(function (){
  var contex = $(this).html();

   for (j=0; j < patt.length; j++){
	var tags="abbr";
	if(j==3)tags="div";	
	var chang = '<'+tags+' class="hide_Nic-SIG ' + patt[j].substring(2,5) + '" >';//alert(chang)
	var EndCh = '</'+tags+'>'; 
	var reg_esp  = new RegExp(patt[j],"igm");
	contex=contex.replace(reg_esp,chang + "$1" + EndCh);//alert(contex)
    }$(this).html(contex)
 });
var pa_avtr='<li class="pa-avatar">';
var Avt_St='<img src="';
var Avt_End='"alt="Аватар"/>';
var PostSig_St='<dl class="post-sig"><dt><span>Подпись автора</span></dt><dd><p>';
var PostSig_End='</p></dd></dl>';
var DpskTek;

$(".post").each(function (){
 var NIk=$(this).find(".post-author .pa-author a").html()
DpskTek = 1;for(q=0;q<DopuskList.length;q++){if(DopuskList[q]== NIk){DpskTek = 0;break;}}

$(this).find(".hide_Nic-SIG").each(function (){

   var S=$(this).html();

  /*[AVA]*/ if($(this).hasClass('AVA')==true){var AVA=$(this).parents(".post").find(".post-author .pa-avatar")
    if(AVA.html()!=null){AVA.html(Avt_St+S+Avt_End)}else $(this).parents(".post").find(".post-author .pa-title").after(pa_avtr+Avt_St+S+Avt_End+'</li>');}


if(DpskTek == 1){
  /*[NIC]*/ if($(this).hasClass('NIC')==true){$(this).parents(".post").find(".post-author .pa-author a").html(S);}
  /*[STA]*/ if($(this).hasClass('STA')==true){$(this).parents(".post").find(".post-author .pa-title").html(S);}
  /*[SGN]*/ if($(this).hasClass('SGN')==true){$(this).parents(".post").find(".post-content .post-sig").replaceWith("");
	  $(this).parents(".post").find(".post-content").append(PostSig_St+S+PostSig_End);}
}
});});
//======= end Обслуживание BB-Тегов ===============================//

//alert("B")

//alert(Dopusk);alert(DopuskList);

//========================================================================//
//Тут ставим  в форму ответа Блок-меню  и кнопку, в зависимости от Dopuska

var L1="<div id=My clacc=My><img title=\"Смена имиджа\" id=imgNIK-SIG width=20 src=\"https://forumstatic.ru/files/0016/83/1e/15866.png\" onclick=\"$('#stTs').toggle()\" alt=\"Аватар\" style=\"vertical-align:middle\"/><div style=\"z-index: 3000;\" id=\"stTs\" class=\"container\"><img id=\"sdfs\" src=\"https://forumstatic.ru/files/0016/83/1e/28407.png\" style=\"position:absolute;margin:-29px;z-index:3000 0 0 -5px;\"/><img alt=\"NIC\" class=\"iblank NIC\" src=\"/i/blank.gif\"  title=\"Cменить ник\"/><img alt=\"STA\" class=\"iblank STA\" src=\"/i/blank.gif\"  title=\"Cменить статус\"/><img alt=\"AVA\" class=\"iblank AVA\" src=\"/i/blank.gif\"  title=\"Cменить авaтар\"/><img class=\"iblank Galleri\" src=\"/i/blank.gif\" onmouseover=\"THISsrc=this.src;this.src=\"/i/blank.gif\" onmouseout=\"this.src=THISsrc;\"  title=\"Выбрать из галереи\" onclick=\"$('#avtrChang-area').toggle('545')\"/><img alt=\"SGN\" class=\"iblank SGN\" src=\"/i/blank.gif\"  title=\"Cменить подпись\"/><img alt=\"mem\" class=\"iblank mem\" src=\"/i/blank.gif\" title=\"Вставить запомненное из 'предыдущей сессии'\"/></div></div>";

var L2="<div id=My clacc=My><img title=\"Смена аватара\" id=imgNIK-SIG width=20 src=\"https://forumstatic.ru/files/0016/83/1e/15866.png\" onclick=\"$('#stTs').toggle()\" alt=\"Аватар\" style=\"vertical-align:middle\"/><div style=\"z-index: 3000;\" id=\"stTs\" class=\"container\"><img id=\"sdfs\" src=\"https://forumstatic.ru/files/0016/83/1e/20494.png\" style=\"position:absolute;margin:-29px;z-index:3000 0 0 -5px;\"/><img class=\"iblank STA\" src=\"/i/blank.gif\" /><img alt=\"AVA\" class=\"iblank AVA\" src=\"/i/blank.gif\"  title=\"Cменить авaтар\"/><img class=\"iblank Galleri\" src=\"/i/blank.gif\" onmouseover=\"THISsrc=this.src;this.src=\"/i/blank.gif\" onmouseout=\"this.src=THISsrc;\"  title=\"Выбрать из галереи\" onclick=\"$('#avtrChang-area').toggle('545')\"/></div></div>";

if(!Dopusk){L1=L2};$("#keyboard-area").after(L1)
//==========  Галерея ===========================================//

var cntrAvt="<div class=\"container\" id=\"avtrChang-area\" onclick=\"$('#avtrChang-area').toggle()\" style=\"display: none\"><div id=\"avtrChang-block\"></div></div>";
var preAvtrST="<img src=\"";
var preAvtrEnd="\" height=\"55\" alt=\"Avatar\" onclick=\"var bDSb='[AVA]'+this.src+'[/AVA]';setCookie3('AVA',bDSb,30*24*60*60*1000);smile(''+bDSb+'');\"/> ";


$("#smilies-area").before(cntrAvt)
for(i=0; i<AvtrArr.length; i++){$("#avtrChang-area").append(preAvtrST+AvtrArr[i]+preAvtrEnd);}

//======= Обслуживание запомненных Cookie таблицы Ввода в форме ответа  ===============================//
	var TagsSUM ={NIC:0,STA:0,AVA:0,SGN:0}
function ReadAndSetBBcocie() {

var BB_Lst = new Array("NIC","STA","AVA","SGN")
	for(i=0; i<BB_Lst.length; i++){
	var s=getCookie3(BB_Lst[i]);
	if(s){smile('\n'+s);}
	}
}
//======= Обслуживание Текущих Cookie таблицы Ввода в форме ответа  ===============================//

function TagsAlert (BB) {
	var LBBstr="однострочный";

  alert("ОШИБКА ПРИМЕНЕНИЯ ТЕГА:\nTeг ["+BB+"] - не пустой(пустые теги не запоминаются), "+LBBstr+" и однократно-применимый в одном сообщении!\n\n - Для для правильного отображения тегов, используемых в блоке \"КОД\", применяйте скрипт \"Обезвреживания\":\n\n Cсылка на Скрипт:\nhttps://forum.mybb.ru/viewtopic.php?id=21313&p=6#p663171\n\n")
}


function CmpareInOut(In,Out,BB) {
	var result='',reSt="["+BB+"]"

	for(i=0; i<Out.length; i++){if(In.substring(0,i)!=Out.substring(0,i))
	 {
	Out=Out.replace(In.substring(0,i-1),'');
	Out=Out.replace(/^[\s\S]{0,5}\]/igm,'');//alert("Out1="+Out)
	var re="[/"+BB+"]",Send=Out.indexOf(re);
	if(Send!=-1)result=Out.substring(0,Send); //alert("result="+result)
	if(BB!="SGN" && result.replace(/^.*?([\n\r]|$)/,'')!=""){$("#main-reply").val(In);TagsAlert (BB);
	  result='';return false;}	// Проверка на многострочность не у подписи!

	if(result){	//Найдено наполнение тега;
	result=reSt+result+re;	//alert("result="+result)
	setCookie3(BB,result,30*24*60*60*1000); return result;} 
	else return false;
	  }
        } return false;  // Конец цикла и не нашли
}
//======= Обслуживание Таблицы Ввода в форме ответа  ===============================//
$(document).ready( function(){
    $('#stTs .iblank[alt]').click(function(){
	BB=$(this).attr("alt");
	if(BB=='mem'){ReadAndSetBBcocie();
	}else {	//alert(BB);
	In=$("#main-reply").val()
	bbcode('['+BB+']','[/'+BB+']')
	Out=$("#main-reply").val()
 	var E=CmpareInOut(In,Out,BB); //alert(E);
	}
	  return false;
    });
 });
//=======  end Обслуживание Таблицы Ввода в форме ответа  ===============================//
 } // ### end function StartNIZ(){ ###############//

Заранее спасибо.

0

2

Exhumed
1.то что красным, изменить на значение 0

/* A5.4 */
.punbb .section, .punbb .main {
margin-bottom: 1em;

2. Просто скопируй и замени. Изменила паддинг по вертикали.

/* A5.10 [сношать] эти категории */
.punbb .section h2, #pun-main h1, #pun-main h2, #pun-stats h2, #pun-debug h2 {
  padding: 35px 1em 5px 1em;
  border-style: none;
  border-width: 0px;}

#pun-stats h2, #pun-main h2 {
  padding: 30px 0px 0px 0px;}

3. Хз, прокрутка - частое явление. Чтоб избавится от прокрутки, пропиши это в первом окне цсс:

body {
  overflow-x: hidden;
}

Или не о той прокрутке речь идет? Оо
Пропиши min-height тогда
4. Со сменой имиджа в последнее время трешак творится. Могу со своего форума дать, он рабочий, просто картинки поменяешь на свои.

Отредактировано pusheen. (Ср, 16 Сен 2015 11:26:52)

0

3

pusheen.
Благодарю! Помогло, все нормально встало.
Да, было бы очень здорово, если бы вы подогнали свой скрипт. (:

0

4

Ап тему.
Появилась еще одна проблема, снова со скроллом внутри форума, на этот раз - горизонтальным.
Форум сохраняет свою ширину, но его можно, так сказать, двигать влево-вправо.

И выглядит это вот так.

http://ssmaker.ru/1f48d7f4.png
http://ssmaker.ru/d152c81a.png

Формирующийся отступ имеет ширину примерно 30 пикселей, появляется только с левой стороны. Форум при этом "уезжает" вправо, под общий фон.
Проблема появляется самопроизвольно, после попытки выделить текст в частности, а у одного из администраторов вовсе не наблюдается.

0

5

Exhumed
CSS трюки пост 71

0

6

Exhumed
Администрирование - Свой стиль, в первом поле найдите код

#pun {
  background: url("http://ipic.su/img/img7/fs/fon.1442313080.png") repeat top center;
  overflow-x: hidden;
  background-position: center;}

Выделенное красным - удалить (собственно эта строчка и скрывает проблему, но не устраняет её). После удаления этой строчки могут вылезти новые косяки.

0

7

Reysler написал(а):

Выделенное красным - удалить (собственно эта строчка и скрывает проблему, но не устраняет её). После удаления этой строчки могут вылезти новые косяки.

Помогло, спасибо. Пока все стабильно и никаких новых сюрпризов не вылезает.

Говоря о других проблемах - между тем, теперь меню смены имиджа стало видимым, но - само по себе все еще некликабельно. Это можно как-то исправить?

0


Вы здесь » Единый форум поддержки » Вопросы по оформлению форума » Полоса внизу форума, названия категорий, скролл и скрипт смены аватара