We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

Rich text editor not showing in bootstrap collapsible accordion

I have a blazor SfRichTextEditor inside a bootstrap collapsible accordion in which the div section is initially collapsed. When I expand the accordion section the text shows but not control. When I resize the browser the control appears but it over writes the page layout footer.


I have attached screen shots.


Attachment: richtx2_6ef3d09f.zip

4 Replies

RK Revanth Krishnan Syncfusion Team July 1, 2021 01:23 PM UTC

Hi Chris, 
 
 
Greetings from Syncfusion support. 
 
 
We have validated your query “Rich Text Editor is not showing in bootstrap collapsible accordion. When I resize the browser the control appears but it overwrites the page layout footer.” 
 
This issue occurred because the Rich Text Editor height is not calculated properly when the accordion is expanded and this issue can be resolved by calling the ‘RefreshUI’ public method of the Rich Text Editor in the click event of the accordion button. We have prepared a sample for your reference, 
 
Code Snippet: 
. . . 
<div class="accordion" id="accordionExample"> 
    <div class="accordion-item"> 
        <h2 class="accordion-header" id="headingOne"> 
            <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne"> 
                Accordion Item #1 
            </button> 
        </h2> 
        <div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionExample"> 
            <div class="accordion-body"> 
                <strong>This is the first item's accordion body.</strong> It is shown by default, until the collapse plugin adds the appropriate classes that we use to style each element. These classes control the overall appearance, as well as the showing and hiding via CSS transitions. You can modify any of this with custom CSS or overriding our default variables. It's also worth noting that just about any HTML can go within the <code>.accordion-body</code>, though the transition does limit overflow. 
            </div> 
        </div> 
    </div> 
    <div class="accordion-item"> 
        <h2 class="accordion-header" id="headingTwo"> 
            <button @onclick="@item1Click" class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo"> 
                Accordion Item #2 
            </button> 
        </h2> 
        <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample"> 
            <div class="accordion-body"> 
                <SfRichTextEditor @ref="@rteObj1"> 
                    <p>This is Rich Text Editor inside the Accordion Item 2</p> 
                </SfRichTextEditor> 
            </div> 
        </div> 
    </div> 
    <div class="accordion-item"> 
        <h2 class="accordion-header" id="headingThree"> 
            <button @onclick="@item2Click" class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree"> 
                Accordion Item #3 
            </button> 
        </h2> 
        <div id="collapseThree" class="accordion-collapse collapse" aria-labelledby="headingThree" data-bs-parent="#accordionExample"> 
            <div class="accordion-body"> 
                <SfRichTextEditor @ref="@rteObj2"> 
                    <p>This is Rich Text Editor inside the Accordion Item 3</p> 
                </SfRichTextEditor> 
            </div> 
        </div> 
    </div> 
</div> 
 
 
<style> 
    .e-rte-content { 
        z-index: -1; 
    } 
</style> 
 
@code { 
    SfRichTextEditor rteObj1; 
    SfRichTextEditor rteObj2; 
 
    public void item1Click() 
    { 
        this.rteObj1.RefreshUI(); 
    } 
 
    public void item2Click() 
    { 
        this.rteObj2.RefreshUI(); 
    } 
} 
 
 
Please check the above code snippet and the sample and let us know if it resolves the issue. 
 
Regards, 
Revanth 



CG Chris Gilliam July 30, 2021 09:10 AM UTC

I am calling RefreshUI on the components but it is still overlapping the footer of the main page. I have included two screen shots where you can see how the richeedit is being drawn over the footer but not the other card elements.


Attachment: syncfusion_textbox2_5d6cf52a.zip


CG Chris Gilliam July 30, 2021 10:00 AM UTC

Also sometimes the controls do not appear at first. It takes several attempts of opening and closing the accordion or resizing the page to make them appear.



GK Gunasekar Kuppusamy Syncfusion Team August 2, 2021 10:39 AM UTC

Hi Chirs,


Good day to you.


We have validated your reported queries.

Query 1: I am calling RefreshUI on the components but it is still overlapping the footer of the main page. I have included two screen shots where you can see how the richeedit is being drawn over the footer but not the other card elements.


We were able to reproduce this issue from our end and it reproduced due to the zIndex style issue.
SO we suggest you use a higher zIndex value for the footer element.

We have prepared a sample for your reference also


Query 2: Also sometimes the controls do not appear at first. It takes several attempts of opening and closing the accordion or resizing the page to make them appear.


We have checked this issue from our end but we are not able to replicate the mentioned issue.

Please share the following details, 
  • Exact reproduce steps to reproduce the issue
  • The video illustration of the issue reproducing scenario.
  • The package version that you are using.
  • If possible, modify the above sample to reproduce the issue
 
The above details will be helpful for us to validate and reproduce the issue from our end and assist you at the earliest. 

Regards,
Gunasekar


Loader.
Up arrow icon