Rearranging buttons in radio-list question (top-r, top-l, bottom-r, bottom-l)

Más
1 mes 2 semanas antes - 1 mes 2 semanas antes #192617 por Kristoss
Hi Guys,

LS: 3.15.1+181017 / vanilla template / the survey will be displayed only on pc in chrome website (no mobile or different browsers)


I'm using radio-button-list question type. I would like to arrange this question in the following way:

- on the center of screen i would like to present an image

- on each corner of the screen (top-left, top-right, bottom-left, bottom-right) i would like to present possible answer option (buttons with labels). Explanatory figure in the attachment.

I tried to modify the ".radio-list" from "theme.css" via theme editor but with no effect.

My skill with html/css can be described as "monkey see, monkey do" so please take this into account while answering my question.
Adjuntos:
Última Edición: 1 mes 2 semanas antes por Kristoss.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

LimeSurvey Partners
Más
1 mes 2 semanas antes - 1 mes 2 semanas antes #192619 por tpartner
Can you attach a small sample survey (.lss file) containing only that question?

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com
Última Edición: 1 mes 2 semanas antes por tpartner.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192623 por Kristoss
Thank you for quick reaction.

Sample survey in the attachment.
Adjuntos:

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes - 1 mes 2 semanas antes #192625 por tpartner
You will need do do it with two steps...

Move the buttons into the question text element via JavaScript:

<script type="text/javascript" charset="utf-8">
 
	$(document).on('ready pjax:scriptcomplete',function(){
 
		// Identify this question
		var thisQuestion = $('#question{QID}');
 
		// Move the answer buttons into the question text element
		$('.answer-container', thisQuestion).removeClass('col-xs-12').appendTo($('.ls-label-question', thisQuestion));
 
		// Loop through the answer buttons
		$('.bootstrap-buttons-div', thisQuestion).each(function(i) {
 
			// Assign classes for styling
			$(this).addClass('item-'+(i+1));
		});
    });
</script>

Add some styles like this:

<style type="text/css">
 
	#question{QID} .ls-label-question {
		position: relative;
		margin: 50px auto;
		width: 640px;
	}
 
	#question{QID} .ls-label-question .answers-list {
		padding: 0;
	}
 
	#question{QID} .ls-label-question .bootstrap-buttons-div {
		position: absolute;
		width: 200px;
	}
 
	#question{QID} .ls-label-question .bootstrap-buttons-div.item-1 {
		top: 20px;
		left: -140px;
	}
 
	#question{QID} .ls-label-question .bootstrap-buttons-div.item-2 {
		top: 20px;
		right: -140px;
	}
 
	#question{QID} .ls-label-question .bootstrap-buttons-div.item-3 {
		bottom: 20px;
		left: -140px;
	}
 
	#question{QID} .ls-label-question .bootstrap-buttons-div.item-4 {
		bottom: 20px;
		right: -140px;
	}
</style>



Here is your sample survey back with those changes:

Archivo Adjunto:

Nombre del Archivo: limesurvey...1321.lss
Tamaño del Archivo:19 KB

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com
Adjuntos:
Última Edición: 1 mes 2 semanas antes por tpartner.
El siguiente usuario dijo gracias: DenisChenu, gabrieljenik

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192635 por Kristoss
Thank you for help but unfortunately I cannot reproduce your output. I'm adding my screenshot - this is how your survey is displayed on my setting.
Adjuntos:

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192636 por tpartner
Can you activate the sample survey and give us a link?

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192637 por Kristoss
Yes. I see the source code in the question but the output is regular as for button-list question.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192665 por tpartner
Without a link to a live survey I cannot see if there are and JavaScript errors or other issues.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes #192673 por Kristoss

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
1 mes 2 semanas antes - 1 mes 2 semanas antes #192691 por tpartner
Hmm...that older version uses a different HTML structure for the button question. I cannot test directly but try replacing the script and styles in the question text with these:

<script type="text/javascript" charset="utf-8">
 
	$(document).on('ready pjax:scriptcomplete',function(){
 
		// Identify this question
		var thisQuestion = $('#question{QID}');
 
		// Move the answer buttons into the question text element
		$('.answer-container', thisQuestion).removeClass('col-xs-12').appendTo($('.ls-label-question', thisQuestion));
 
		// Loop through the answer buttons
		$('.ls-label-question .button-item', thisQuestion).each(function(i) {
 
			// Assign classes for styling
			$(this).addClass('item-'+(i+1));
		});
    });
</script>

<style type="text/css">
 
	#question{QID} .ls-label-question {
		position: relative;
		margin: 50px auto;
		width: 640px;
	}
 
	#question{QID} .ls-label-question .answers-list {
		padding: 0;
	}
 
	#question{QID} .ls-label-question .answers-list .btn-group {
		display: block;
		position: static;
	}
 
	#question{QID} .ls-label-question .button-item {
		display: block;
		position: absolute;
		width: 200px;
		border-radius: 6px;
	}
 
	#question{QID} .ls-label-question .button-item.item-1 {
		top: 20px;
		left: -140px;
	}
 
	#question{QID} .ls-label-question .button-item.item-2 {
		top: 20px;
		right: -140px;
	}
 
	#question{QID} .ls-label-question .button-item.item-3 {
		bottom: 20px;
		left: -140px;
	}
 
	#question{QID} .ls-label-question .button-item.item-4 {
		bottom: 20px;
		right: -140px;
	}
</style>

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com
Última Edición: 1 mes 2 semanas antes por tpartner.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

¡Comenzar ahora!

Simplemente cree una cuenta y comience a usar LimeSurvey hoy mismo.

Registrarse ahora
¡Únase a nuestro boletín informativo!

Iniciar sesión